2018-01-28 21:10:34 +01:00
|
|
|
# $NetBSD: Makefile,v 1.164 2018/01/28 20:10:55 wiz Exp $
|
1998-11-22 20:45:08 +01:00
|
|
|
|
Octave: update to 4.2.0
pkgsrc changes: removed all patches to do with qt5 support, upstream
code does it now. blindly moved some patches that were replacing
INSTALL_PROGRAM to INSTALL_LIB as the build changed. added patch
replacing struct tm_zone with timezone_t to accommodate for missing
type in NetBSD - same as libgnu does.
ok adam
Summary of important user-visible changes for version 4.2:
---------------------------------------------------------
** The parser has been extended to accept, but ignore, underscore
characters in numbers. This facilitates writing more legible code
by using '_' as a thousands separator or to group nibbles into bytes
in hex constants.
Examples: 1_000_000 == 1e6 or 0xDE_AD_BE_EF
** The parser has been extended to understand binary numbers which
begin with the prefix '0b' or '0B'. The value returned is Octave's
default numeric class of double, not at unsigned integer class.
Therefore numbers greater than flintmax, i.e., 2^53, will lose some
precision.
Examples: 0b101 == 5 or 0B1100_0001 == 0xC1
** gnuplot 4.4 is now the minimum version supported by Octave.
** The default set of colors used to plot lines has been updated to be
compatible with Matlab's new default color scheme. The line plot
color scheme can be set with the axes property "ColorOrder".
** The default colormap is now set to "viridis" which is also the
default colormap in matplotlib. This new colormap fixes some of the
main issues with the old default colormap "jet" such as its bad
"luminance profile" and is also more similar to Matlab's new default
colormap "parula".
** The colormap function no longer supports the input argument "list"
to show built-in colormaps. Use "help colormap" to find the
built-in colormaps.
** The graphics command "hold on" now ensures that each new plot added
to an existing plot has a different color or linestyle according to
the "ColorOrder" and/or "LineStyleOrder" properties. This is
equivalent to the old command "hold all" and was made for Matlab
compatibility. Existing code *may* produce differently colored
plots if it did not specify the color for a plot and relied on each
new plot having the default first color in the "ColorOrder"
property.
** When starting, Octave now looks in the function path for a file
startup.m and executes any commands found there. This change was
made to accommodate Matlab users. Octave has it's own configuration
system based on the file .octaverc which is preferred.
** Octal ('\NNN') and hex ('\xNN') escape sequences in single quoted
strings are now interpreted by the function do_string_escapes().
The *printf family of functions now supports octal and hex escape
sequences in single-quoted strings for Matlab compatibility.
** Special octal and hex escape sequences for the pattern and
replacement strings in regular expressions are now interpreted for
Matlab compatibility.
octal: '\oNNN' or '\o{NNN}'
hex : '\xNN' or '\x{NN}'
** Unknown escape sequences in the replacement string for regexprep are
now substituted with their unescaped version and no warning is
emitted. This change was made for Matlab compatibility.
Example: regexprep ('a', 'a', 'x\yz')
=> 'xyz'
** mkfifo now interprets the MODE argument as an octal, not decimal,
integer. This is consistent with the equivalent shell command.
** linspace now returns an empty matrix if the number of requested
points is 0 or a negative number. This change was made to be
compatible with Matlab releases newer than 2011. In addition,
Octave no longer supports matrix inputs for A or B.
** The cov function now returns the complex conjugate of the result
from previous versions of Octave. This change was made for
compatibility with Matlab.
** condest now works with a normest1 compatible syntax.
** The griddata function no longer plots the interpolated mesh if no
output argument is requested, instead the vector or array of
interpolated values is always returned for Matlab compatibility.
** The new function "light" and the corresponding graphics object
provide light and shadow effects for patch and surface objects.
** The surfnorm function now returns unnormalized (magnitude != 1)
normal vectors for compatibility with Matlab.
** The normal vectors returned from isonormals have been reversed to
point towards smaller values for compatibility with Matlab.
** The quadl function now uses an absolute, rather than relative,
tolerance for Matlab compatibility. The default tolerance is 1e-6
which may result in lower precision results than previous versions
of Octave which used eps as the relative tolerance. The quadl
function has also been extended to return a second output with the
total number of function evaluations.
** The textscan function is now built-in and is much faster and much
more Matlab-compatible than the previous m-file version.
** Dialog boxes--errordlg, helpdlg, inputdlg, listdlg, msgbox,
questdlg, and warndlg--now exclusively use Qt for rendering.
Java based versions have been removed.
** The axes properties "TitleFontSizeMultiplier" and "TitleFontWeight"
are now implemented which control the default appearance of text
created with title().
The axes property "LabelFontSizeMultiplier" is now implemented
which controls the default appearance of text created with
xlabel(), ylabel(), or zlabel().
** The graphics property "box" for axes now defaults to "off".
To obtain equivalent plots to previous versions of Octave use
set (0, "DefaultAxesBox", "on");
in your .octaverc file.
** The graphics property "boxstyle" has been implemented. The default
is "back" which draws only the back planes in a 3-D view. If the
option is "full" then all planes are drawn.
** The graphics property "erasemode" has been hidden, and will
eventually be removed. This property has also been removed
from Matlab, and was never implemented in Octave.
** The graphics property "graphicssmoothing" for figures now controls
whether anti-aliasing will be used for lines. The default is "on".
** The value "zero" for the axes properties "xaxislocation" and
"yaxislocation" has been deprecated and will be removed from
Octave 4.6. Use "origin" instead.
** The publish function allows easy publication of Octave script files
in HTML or other formats, including figures and output created by
this script. It comes with its counterpart grabcode, which lets one
literally grab the HTML published code from a remote website, for
example.
** The value of the MEX variable TrapFlag now defaults to 0, which will
cause Octave to abort execution of a MEX file and return to the
prompt if an error is encountered in mexCallMATLAB.
** The MEX API now includes the function mexCallMATLABWithTrap. This
function will not abort if an error occurs during mexCallMATLAB, but
instead will return execution to the MEX function for error
handling.
** The MEX API functions for input validation that begin with "mxIs"
(e.g., mxIsDouble, mxIsEmpty, etc.) now return type bool rather than
type int.
** The functions mxAssert and mxAssertS for checking assertions have
been added. In order to avoid a performance penalty they are only
compiled in to debug versions of a MEX file, i.e., that are produced
when the '-g' option is given to mex or mkoctfile.
** Other new MEX API functions include mexEvalStringWithTrap,
mxIsScalar, mxCreateUninitNumericArray, mxCreateUninitNumericMatrix.
** Other new functions added in 4.2:
audioformats
camlight
condeig
deg2rad
dialog
evalc
hash
im2double
isocaps
lighting
localfunctions
material
normest1
ode23
ode45
odeget
odeplot
odeset
padecoef
profexport
psi
rad2deg
reducepatch
reducevolume
smooth3
uibuttongroup
** Deprecated functions.
The following functions have been deprecated in Octave 4.2 and will
be removed from Octave 4.6 (or whatever version is the second major
release after 4.2):
Function | Replacement
---------------------|------------------
bitmax | flintmax
mahalanobis | mahal in Octave-Forge statistics pkg
md5sum | hash
octve_config_info | __octave_config_info__
onenormest | normest1
sleep | pause
usleep | pause
wavread | audioread
wavwrite | audiowrite
** The following functions were deprecated in Octave 3.8 and have been
removed from Octave 4.2.
default_save_options java_new
gen_doc_cache java_unsigned_conversion
interp1q javafields
isequalwithequalnans javamethods
java_convert_matrix re_read_readline_init_file
java_debug read_readline_init_file
java_invoke saving_history
** The global error_state variable in Octave's C++ API has been
deprecated and will be removed in a future version. Now the error
and print_usage functions throw an exception
(octave::execution_exception) after displaying the error message.
This makes the error and print_usage functions in C++ work more like
the corresponding functions in the scripting language.
** The default error handlers in liboctave have been updated to use
exceptions. After displaying an error message they no longer return
control to the calling program. The error handler function can be
customized through the global variables
"current_liboctave_error_handler" and
"current_liboctave_error_with_id_handler". If a programmer has
installed their own custom error handling routines when directly
linking with liboctave then these must be updated to throw an
exception and not return to the calling program.
** The system for common errors and warnings has been renamed from
gripe_XXX to either err_XXX if error is called or warn_XXX if
warning is called. The gripe_XXX functions are deprecated and will
be removed in version 4.6.
** New configure option, --enable-address-sanitizer-flags, to build
Octave with memory allocator checks (similar to those in valgrind)
built in.
2016-11-19 22:53:12 +01:00
|
|
|
DISTNAME= octave-4.2.0
|
2018-01-28 21:10:34 +01:00
|
|
|
PKGREVISION= 19
|
1998-11-22 20:45:08 +01:00
|
|
|
CATEGORIES= math
|
2014-05-04 15:46:42 +02:00
|
|
|
MASTER_SITES= ${MASTER_SITE_GNU:=octave/}
|
1998-11-26 00:56:53 +01:00
|
|
|
|
2005-04-01 12:15:46 +02:00
|
|
|
MAINTAINER= adam@NetBSD.org
|
2006-10-04 23:47:16 +02:00
|
|
|
HOMEPAGE= http://www.octave.org/
|
2005-04-01 12:15:46 +02:00
|
|
|
COMMENT= High-level language, intended for numerical computations
|
2014-05-04 15:49:57 +02:00
|
|
|
LICENSE= gnu-gpl-v3
|
1998-11-26 00:56:53 +01:00
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
# These BUILD_DEPENDS are only needed if we need to rebuild the documentation
|
|
|
|
#BUILD_DEPENDS+= tex-latex-fonts-[0-9]*:../../fonts/tex-latex-fonts
|
|
|
|
#BUILD_DEPENDS+= dvipsk-[0-9]*:../../print/dvipsk
|
|
|
|
#BUILD_DEPENDS+= tex-epsf-[0-9]*:../../print/tex-epsf
|
|
|
|
#BUILD_DEPENDS+= tex-tex-[0-9]*:../../print/tex-tex
|
|
|
|
#BUILD_DEPENDS+= tex-pdftex-[0-9]*:../../print/tex-pdftex
|
|
|
|
#TOOL_DEPENDS+= gtexinfo>=5.1:../../devel/gtexinfo
|
2005-04-01 12:15:46 +02:00
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
DEPENDS+= gnuplot>=3.7:../../graphics/gnuplot
|
2001-03-29 23:21:36 +02:00
|
|
|
|
Update to Octave 3.4.3
This makes the package build and work at least in NetBSD on some platforms.
Summary of important user-visible changes for version 3.4.3:
-----------------------------------------------------------
** Octave 3.4.3 is a bug fixing release.
Summary of important user-visible changes for version 3.4.2:
-----------------------------------------------------------
** Octave 3.2.4 fixes some minor installation problems that affected
version 3.4.1.
Summary of important user-visible changes for version 3.4.1:
-----------------------------------------------------------
** Octave 3.4.1 is primarily a bug fixing release.
** IMPORTANT note about binary incompatibility in this release:
Binary compatibility for all 3.4.x releases was originally planned,
but this is impossible for the 3.4.1 release due to a bug in the way
shared libraries were built in Octave 3.4.0. Because of this bug,
.oct files built for Octave 3.4.0 must be recompiled before they
will work with Octave 3.4.1.
Given that there would be binary incompatibilities with shared
libraries going from Octave 3.4.0 to 3.4.1, the following
incompatible changes were also made in this release:
* The Perl Compatible Regular Expression (PCRE) library is now
required to build Octave.
* Octave's libraries and .oct files are now installed in
subdirectories of $libdir instead of $libexecdir.
Any future Octave 3.4.x release versions should remain binary
compatible with Octave 3.4.1 as proper library versioning is now
being used as recommended by the libtool manual.
** The following functions have been deprecated in Octave 3.4.1 and will
be removed from Octave 3.8 (or whatever version is the second major
release after 3.4):
cquad is_duplicate_entry perror strerror
** The following functions are new in 3.4.1:
colstyle gmres iscolumn isrow mgorth nproc rectangle
** The get_forge_pkg function is now private.
** The rectangle_lw, rectangle_sw, triangle_lw, and triangle_sw
functions are now private.
** The logistic_regression_derivatives and logistic_regression_likelihood
functions are now private.
** ChangeLog files in the Octave sources are no longer maintained
by hand. Instead, there is a single ChangeLog file generated from
the Mercurial version control commit messages. Older ChangeLog
information can be found in the etc/OLD-ChangeLogs directory in the
source distribution.
Summary of important user-visible changes for version 3.4:
---------------------------------------------------------
** BLAS and LAPACK libraries are now required to build Octave. The
subset of the reference BLAS and LAPACK libraries has been removed
from the Octave sources.
** The `lookup' function was extended to be more useful for
general-purpose binary searching. Using this improvement, the
ismember function was rewritten for significantly better
performance.
** Real, integer and logical matrices, when used in indexing, will now
cache the internal index_vector value (zero-based indices) when
successfully used as indices, eliminating the conversion penalty for
subsequent indexing by the same matrix. In particular, this means it
is no longer needed to avoid repeated indexing by logical arrays
using find for performance reasons.
** Logical matrices are now treated more efficiently when used as
indices. Octave will keep the index as a logical mask unless the
ratio of true elements is small enough, using a specialized
code. Previously, all logical matrices were always first converted
to index vectors. This results in savings in both memory and
computing time.
** The `sub2ind' and `ind2sub' functions were reimplemented as compiled
functions for better performance. These functions are now faster,
can deliver more economized results for ranges, and can reuse the
index cache mechanism described in previous paragraph.
** The built-in function equivalents to associative operators (`plus',
`times', `mtimes', `and', and `or') have been extended to accept
multiple arguments. This is especially useful for summing
(multiplying, etc.) lists of objects (of possibly distinct types):
matrix_sum = plus (matrix_list{:});
** An FTP object type based on libcurl has been implemented. These
objects allow ftp connections, downloads and uploads to be
managed. For example,
fp = ftp ("ftp.octave.org);
cd (fp, "gnu/octave");
mget (fp, "octave-3.2.3.tar.bz2");
close (fp);
** The default behavior of `assert (observed, expected)' has been
relaxed to employ less strict checking that does not require the
internals of the values to match. This avoids previously valid
tests from breaking due to new internal classes introduced in future
Octave versions.
For instance, all of these assertions were true in Octave 3.0.x
but false in 3.2.x due to new optimizations and improvements:
assert (2*linspace (1, 5, 5), 2*(1:5))
assert (zeros (0, 0), [])
assert (2*ones (1, 5), (2) (ones (1,5)))
** The behavior of library functions `ismatrix', `issquare', and
`issymmetric' has been changed for better consistency.
* The `ismatrix' function now returns true for all numeric,
logical and character 2-D or N-D matrices. Previously, `ismatrix'
returned false if the first or second dimension was zero.
Hence, `ismatrix ([])' was false,
while `ismatrix (zeros (1,2,0))' was true.
* The `issquare' function now returns a logical scalar, and is
equivalent to the expression
ismatrix (x) && ndims (x) == 2 && rows (x) == columns (x)
The dimension is no longer returned. As a result, `issquare ([])'
now yields true.
* The `issymmetric' function now checks for symmetry instead of
Hermitianness. For the latter, ishermitian was created. Also,
logical scalar is returned rather than the dimension, so
`issymmetric ([])' is now true.
** Function handles are now aware of overloaded functions. If a
function is overloaded, the handle determines at the time of its
reference which function to call. A non-overloaded version does not
need to exist.
** Overloading functions for built-in classes (double, int8, cell,
etc.) is now compatible with Matlab.
** Function handles can now be compared with the == and != operators,
as well as the `isequal' function.
** Performance of concatenation (using []) and the functions `cat',
`horzcat', and `vertcat' has been improved for multidimensional
arrays.
** The operation-assignment operators +=, -=, *= and /= now behave more
efficiently in certain cases. For instance, if M is a matrix and S a
scalar, then the statement
M += S;
will operate on M's data in-place if it is not shared by another
variable, usually increasing both time and memory efficiency.
Only selected common combinations are affected, namely:
matrix += matrix
matrix -= matrix
matrix .*= matrix
matrix ./= matrix
matrix += scalar
matrix -= scalar
matrix *= scalar
matrix /= scalar
logical matrix |= logical matrix
logical matrix &= logical matrix
where matrix and scalar belong to the same class. The left-hand
side must be a simple variable reference.
Moreover, when unary operators occur in expressions, Octave will
also try to do the operation in-place if it's argument is a
temporary expresssion.
** The effect of comparison operators (<, >, <=, and >=) applied to
complex numbers has changed to be consistent with the strict
ordering defined by the `max', `min', and `sort' functions. More
specifically, complex numbers are compared by lexicographical
comparison of the pairs `[abs(z), arg(z)]'. Previously, only real
parts were compared; this can be trivially achieved by wrapping the
operands in real().
** The automatic simplification of complex computation results has
changed. Octave will now simplify any complex number with a zero
imaginary part or any complex matrix with all elements having zero
imaginary part to a real value. Previously, this was done only for
positive zeros. Note that the behavior of the complex function is
unchanged and it still produces a complex value even if the
imaginary part is zero.
** As a side effect of code refactoring in liboctave, the binary
logical operations are now more easily amenable to compiler
optimizations and are thus significantly faster.
** Octave now allows user-defined `subsasgn' methods to optimize out
redundant copies. For more information, see the manual.
** More efficient matrix division handling. Octave is now able to
handle the expressions
M' \ V
M.' \ V
V / M
(M is a matrix and V is a vector) more efficiently in certain cases.
In particular, if M is triangular, all three expressions will be
handled by a single call to xTRTRS (from LAPACK), with appropriate
flags. Previously, all three expressions required a physical
transpose of M.
** More efficient handling of certain mixed real-complex matrix
operations. For instance, if RM is a real matrix and CM a complex
matrix,
RM * CM
can now be evaluated either as
complex (RM * real (CM), RM * imag (CM))
or as
complex (RM) * CM,
depending on the dimensions. The first form requires more
temporaries and copying, but halves the FLOP count, which normally
brings better performance if RM has enough rows. Previously, the
second form was always used.
Matrix division is similarly affected.
** More efficient handling of triangular matrix factors returned from
factorizations. The functions for computing QR, LU and Cholesky
factorizations will now automatically return the triangular matrix
factors with proper internal matrix_type set, so that it won't need
to be computed when the matrix is used for division.
** The built-in `sum' function now handles the non-native summation
(i.e., double precision sum of single or integer inputs) more
efficiently, avoiding a temporary conversion of the whole input
array to doubles. Further, `sum' can now accept an extra option
argument, using a compensated summation algorithm rather than a
straightforward sum, which significantly improves precision if lots
of cancellation occurs in the summation.
** The built-in `bsxfun' function now uses optimized code for certain
cases where built-in operator handles are passed in. Namely, the
optimizations concern the operators `plus', `minus', `times',
`ldivide', `rdivide', `power', `and', `or' (for logical arrays),
the relational operators `eq', `ne', `lt', `le', `gt', `ge', and the
functions `min' and `max'. Optimizations only apply when both
operands are of the same built-in class. Mixed real/complex and
single/double operations will first convert both operands to a
common type.
** The `strfind' and `strrep' functions now have compiled
implementations, facilitating significantly more efficient searching
and replacing in strings, especially with longer patterns. The code
of `strcat' has been vectorized and is now much more efficient when
many strings are concatenated. The `strcmpi' and `strncmpi'
functions are now built-in functions, providing better performance.
** Matlab-style ignoring input and output function arguments using
tilde (~) is now supported. Ignored output arguments may be
detected from a function using the built-in function `isargout'.
For more details, consult the manual.
** The list datatype, deprecated since the introduction of cells, has
been removed.
** The accumarray function has been optimized and is now significantly
faster in certain important cases.
** The behavior of isreal and isnumeric functions was changed to be more
Matlab-compatible.
** The integer math & conversion warnings (Octave:int-convert-nan,
Octave:int-convert-non-int-val, Octave:int-convert-overflow,
Octave:int-math-overflow) have been removed.
** rem and mod are now built-in functions. They also handle integer
types efficiently using integer arithmetic.
** Sparse indexing and indexed assignment has been mostly rewritten.
Since Octave uses compressed column storage for sparse matrices,
major attention is devoted to operations manipulating whole columns.
Such operations are now significantly faster, as well as some other
important cases.
Further, it is now possible to pre-allocate a sparse matrix and
subsequently fill it by assignments, provided they meet certain
conditions. For more information, consult the `spalloc' function,
which is no longer a mere dummy. Consequently, nzmax and nnz are no
longer always equal in Octave. Octave may also produce a matrix
with nnz < nzmax as a result of other operations, so you should
consistently use nnz unless you really want to use nzmax (i.e. the
space allocated for nonzero elements).
Sparse concatenation is also affected, and concatenating sparse
matrices, especially larger collections, is now significantly more
efficient. This applies to both the [] operator and the
cat/vertcat/horzcat functions.
** It is now possible to optionally employ the xGESDD LAPACK drivers
for computing the singular value decomposition using svd(), instead
of the default xGESVD, using the configuration pseudo-variable
svd_driver. The xGESDD driver can be up to 6x times faster when
singular vectors are requested, but is reported to be somewhat less
robust on highly ill-conditioned matrices.
** Configuration pseudo-variables, such as page_screen_output or
confirm_recursive_rmdir (or the above mentioned svd_driver), now
accept a "local" option as second argument, requesting the change
to be undone when the current function returns:
function [status, msg] = rm_rf (dir)
confirm_recursive_rmdir (false, "local");
[status, msg] = rmdir (dir, "s");
...
endfunction
Upon return, confirm_recursive_rmdir will be restored to the value
it had on entry to the function, even if there were subsequent
changes to the variable in function rm_rf or any of the functions
it calls.
** pkg now accepts a -forge option for downloading and installing
packages from Octave Forge automatically. For example,
pkg install -forge general
will automatically download the latest release of the general
package and attempt to install it. No automatic resolving of
dependencies is provided. Further,
pkg list -forge
can be used to list all available packages.
** The internal data representation of structs has been completely
rewritten to make certain optimizations feasible. The field data
can now be shared between structs with equal keys but different
dimensions or values, making operations that preserve the fields
faster. Economized storage is now used for scalar structs (just
like most other scalars), making their usage more
memory-efficient. Certain array-like operations on structs
(concatenation, uniform cellfun, num2cell) have gained a
significant speed-up. Additionally, the octave_scalar_map class
now provides a simpler interface to work with scalar structs within
a C++ DLD function.
** Two new formats are available for displaying numbers:
format short eng
format long eng
Both display numbers in engineering notation, i.e., mantissa +
exponent where the exponent is a multiple of 3.
** The following functions are new in Octave 3.4:
accumdim erfcx nfields pqpnonneg uigetdir
bitpack fileread nth_element quadcc uigetfile
bitunpack fminbnd onCleanup randi uiputfile
blkmm fskipl pbaspect repelems uimenu
cbrt ifelse pie3 reset whitebg
curl ishermitian powerset rsf2csf
chop isindex ppder saveas
daspect luupdate ppint strread
divergence merge ppjumps textread
** Using the image function to view images with external programs such
as display, xv, and xloadimage is no longer supported. The
image_viewer function has also been removed.
** The behavior of struct assignments to non-struct values has been
changed. Previously, it was possible to overwrite an arbitrary
value:
a = 1;
a.x = 2;
This is no longer possible unless a is an empty matrix or cell
array.
** The dlmread function has been extended to allow specifying a custom
value for empty fields.
** The dlmread and dlmwrite functions have been modified to accept
file IDs (as returned by fopen) in addition to file names.
** Octave can now optimize away the interpreter overhead of an
anonymous function handle, if the function simply calls another
function or handle with some of its parameters bound to certain
values. Example:
f = @(x) sum (x, 1);
When f is called, the call is forwarded to @sum with the constant 1
appended, and the anonymous function call does not occur on the
call stack.
** Deprecated functions.
The following functions were deprecated in Octave 3.0 and have been
removed from Octave 3.4.
beta_cdf geometric_pdf pascal_pdf
beta_inv geometric_rnd pascal_rnd
beta_pdf hypergeometric_cdf poisson_cdf
beta_rnd hypergeometric_inv poisson_inv
binomial_cdf hypergeometric_pdf poisson_pdf
binomial_inv hypergeometric_rnd poisson_rnd
binomial_pdf intersection polyinteg
binomial_rnd is_bool setstr
chisquare_cdf is_complex struct_contains
chisquare_inv is_list struct_elements
chisquare_pdf is_matrix t_cdf
chisquare_rnd is_scalar t_inv
clearplot is_square t_pdf
clg is_stream t_rnd
com2str is_struct uniform_cdf
exponential_cdf is_symmetric uniform_inv
exponential_inv is_vector uniform_pdf
exponential_pdf isstr uniform_rnd
exponential_rnd lognormal_cdf weibcdf
f_cdf lognormal_inv weibinv
f_inv lognormal_pdf weibpdf
f_pdf lognormal_rnd weibrnd
f_rnd meshdom weibull_cdf
gamma_cdf normal_cdf weibull_inv
gamma_inv normal_inv weibull_pdf
gamma_pdf normal_pdf weibull_rnd
gamma_rnd normal_rnd wiener_rnd
geometric_cdf pascal_cdf
geometric_inv pascal_inv
The following functions were deprecated in Octave 3.2 and will
be removed from Octave 3.6 (or whatever version is the second major
release after 3.2):
create_set spcholinv splu
dmult spcumprod spmax
iscommand spcumsum spmin
israwcommand spdet spprod
lchol spdiag spqr
loadimage spfind spsum
mark_as_command sphcat spsumsq
mark_as_rawcommand spinv spvcat
spatan2 spkron str2mat
spchol splchol unmark_command
spchol2inv split unmark_rawcommand
The following functions have been deprecated in Octave 3.4 and will
be removed from Octave 3.8 (or whatever version is the second major
release after 3.4):
autocor cellidx gammai krylovb values
autocov dispatch glpkmex replot
betai fstat is_global saveimage
* For compatibility with Matlab, mu2lin (x) is now equivalent to
mu2lin (x, 0).
* The ARPACK library is now distributed with Octave so it no longer
needs to be available as an external dependency when building
Octave.
2011-12-25 00:46:02 +01:00
|
|
|
USE_LIBTOOL= yes
|
2017-08-01 13:09:14 +02:00
|
|
|
USE_TOOLS+= autoconf gsed gmake:run perl pkg-config bison bsdtar:run
|
2005-04-01 12:15:46 +02:00
|
|
|
GNU_CONFIGURE= yes
|
|
|
|
|
2010-07-30 12:36:22 +02:00
|
|
|
USE_LANGUAGES= c c++ fortran77
|
2005-04-01 12:15:46 +02:00
|
|
|
|
|
|
|
# needed for loading of shared objects such as those in the
|
Changes 3.0.0:
* Compatibility with Matlab graphics is much better now. We now
have some graphics features that work like Matlab's Handle
Graphics (tm):
* The way Octave handles search paths has changed.
* Previous versions of Octave had a number of built-in variables to
control warnings (for example, warn_divide_by_zero). These
variables have been replaced by warning identifiers that are used
with the warning function to control the state of warnings.
* All built-in variables have been converted to functions.
* For compatibility with Matlab, the output order of Octave's
"system" function has changed.
* For compatibility with Matlab, the output of Octave's fsolve
function has been changed.
* For compatibility with Matlab, normcdf, norminv, normpdf, and
normrnd have been modified to compute distributions using the
standard deviation instead of the variance.
* For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
expcdf, expinv, exppdf and exprnd have been modified to compute
the distributions using the standard scale factor rather than
one over the scale factor.
2008-01-11 02:23:43 +01:00
|
|
|
# octave-forge package or user written ones compiled with mkoctfile
|
2005-04-01 12:15:46 +02:00
|
|
|
CONFIGURE_ARGS+= --enable-dl
|
Changes 3.0.0:
* Compatibility with Matlab graphics is much better now. We now
have some graphics features that work like Matlab's Handle
Graphics (tm):
* The way Octave handles search paths has changed.
* Previous versions of Octave had a number of built-in variables to
control warnings (for example, warn_divide_by_zero). These
variables have been replaced by warning identifiers that are used
with the warning function to control the state of warnings.
* All built-in variables have been converted to functions.
* For compatibility with Matlab, the output order of Octave's
"system" function has changed.
* For compatibility with Matlab, the output of Octave's fsolve
function has been changed.
* For compatibility with Matlab, normcdf, norminv, normpdf, and
normrnd have been modified to compute distributions using the
standard deviation instead of the variance.
* For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
expcdf, expinv, exppdf and exprnd have been modified to compute
the distributions using the standard scale factor rather than
one over the scale factor.
2008-01-11 02:23:43 +01:00
|
|
|
CONFIGURE_ARGS+= --enable-static
|
2011-11-28 23:51:27 +01:00
|
|
|
CONFIGURE_ARGS+= --enable-shared
|
Changes 3.0.0:
* Compatibility with Matlab graphics is much better now. We now
have some graphics features that work like Matlab's Handle
Graphics (tm):
* The way Octave handles search paths has changed.
* Previous versions of Octave had a number of built-in variables to
control warnings (for example, warn_divide_by_zero). These
variables have been replaced by warning identifiers that are used
with the warning function to control the state of warnings.
* All built-in variables have been converted to functions.
* For compatibility with Matlab, the output order of Octave's
"system" function has changed.
* For compatibility with Matlab, the output of Octave's fsolve
function has been changed.
* For compatibility with Matlab, normcdf, norminv, normpdf, and
normrnd have been modified to compute distributions using the
standard deviation instead of the variance.
* For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
expcdf, expinv, exppdf and exprnd have been modified to compute
the distributions using the standard scale factor rather than
one over the scale factor.
2008-01-11 02:23:43 +01:00
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
#CONFIGURE_ARGS+= --without-opengl
|
|
|
|
#CONFIGURE_ARGS+= --with-framework-opengl=no
|
|
|
|
CONFIGURE_ARGS+= --disable-java
|
|
|
|
# use this to bypass qt5 portability issues:
|
|
|
|
#CONFIGURE_ARGS+= CPPFLAGS=-DQT_DISABLE_DEPRECATED_BEFORE=0
|
|
|
|
|
2017-08-01 13:06:18 +02:00
|
|
|
# Provide a full path gfortran in MKOCTFILE for octave-forge
|
|
|
|
CONFIGURE_ENV+= MKOCTFILE_F77=${FCPATH}
|
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
|
|
|
|
# When __APPLE__ is defined, fltk headers typedef an alternate version of Window
|
|
|
|
# which conflicts with the one in the X11 headers, so avoid pulling in X11.
|
2016-02-25 16:26:55 +01:00
|
|
|
CONFIGURE_ARGS.Darwin+= --without-x
|
2016-02-16 05:21:40 +01:00
|
|
|
|
|
|
|
# The OpenGL framework doesn't have osmesa and the X11 one has header conflicts with the framework
|
2016-02-25 16:26:55 +01:00
|
|
|
CONFIGURE_ARGS.Darwin+= --without-OSMesa
|
2012-12-20 16:11:15 +01:00
|
|
|
|
2015-04-23 08:50:41 +02:00
|
|
|
# We use this to install .oct files so it doesn't strip them.
|
|
|
|
CONFIGURE_ENV+= INSTALL_LIB=${INSTALL_LIB:Q}
|
|
|
|
|
2017-07-30 14:30:50 +02:00
|
|
|
# XXX Shared object "libgfortran.so.3" not found
|
|
|
|
CONFIGURE_ENV+= octave_cv_sizeof_fortran_integer=yes
|
|
|
|
|
2005-04-01 12:15:46 +02:00
|
|
|
.include "options.mk"
|
1998-11-22 20:45:08 +01:00
|
|
|
|
2007-10-05 18:31:33 +02:00
|
|
|
INFO_FILES= yes
|
2016-02-16 05:21:40 +01:00
|
|
|
OCTAVE_DOC= doc/interpreter/octave.pdf doc/liboctave/liboctave.pdf \
|
|
|
|
doc/refcard/refcard-a4.pdf doc/refcard/refcard-legal.pdf \
|
|
|
|
doc/refcard/refcard-letter.pdf
|
|
|
|
INSTALLATION_DIRS+= share/octave/${PKGVERSION_NOREV}/doc
|
2005-04-01 12:15:46 +02:00
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
#CHECK_WRKREF_SKIP+= share/octave/${PKGVERSION_NOREV}/etc/config.log
|
Update to Octave 3.4.3
This makes the package build and work at least in NetBSD on some platforms.
Summary of important user-visible changes for version 3.4.3:
-----------------------------------------------------------
** Octave 3.4.3 is a bug fixing release.
Summary of important user-visible changes for version 3.4.2:
-----------------------------------------------------------
** Octave 3.2.4 fixes some minor installation problems that affected
version 3.4.1.
Summary of important user-visible changes for version 3.4.1:
-----------------------------------------------------------
** Octave 3.4.1 is primarily a bug fixing release.
** IMPORTANT note about binary incompatibility in this release:
Binary compatibility for all 3.4.x releases was originally planned,
but this is impossible for the 3.4.1 release due to a bug in the way
shared libraries were built in Octave 3.4.0. Because of this bug,
.oct files built for Octave 3.4.0 must be recompiled before they
will work with Octave 3.4.1.
Given that there would be binary incompatibilities with shared
libraries going from Octave 3.4.0 to 3.4.1, the following
incompatible changes were also made in this release:
* The Perl Compatible Regular Expression (PCRE) library is now
required to build Octave.
* Octave's libraries and .oct files are now installed in
subdirectories of $libdir instead of $libexecdir.
Any future Octave 3.4.x release versions should remain binary
compatible with Octave 3.4.1 as proper library versioning is now
being used as recommended by the libtool manual.
** The following functions have been deprecated in Octave 3.4.1 and will
be removed from Octave 3.8 (or whatever version is the second major
release after 3.4):
cquad is_duplicate_entry perror strerror
** The following functions are new in 3.4.1:
colstyle gmres iscolumn isrow mgorth nproc rectangle
** The get_forge_pkg function is now private.
** The rectangle_lw, rectangle_sw, triangle_lw, and triangle_sw
functions are now private.
** The logistic_regression_derivatives and logistic_regression_likelihood
functions are now private.
** ChangeLog files in the Octave sources are no longer maintained
by hand. Instead, there is a single ChangeLog file generated from
the Mercurial version control commit messages. Older ChangeLog
information can be found in the etc/OLD-ChangeLogs directory in the
source distribution.
Summary of important user-visible changes for version 3.4:
---------------------------------------------------------
** BLAS and LAPACK libraries are now required to build Octave. The
subset of the reference BLAS and LAPACK libraries has been removed
from the Octave sources.
** The `lookup' function was extended to be more useful for
general-purpose binary searching. Using this improvement, the
ismember function was rewritten for significantly better
performance.
** Real, integer and logical matrices, when used in indexing, will now
cache the internal index_vector value (zero-based indices) when
successfully used as indices, eliminating the conversion penalty for
subsequent indexing by the same matrix. In particular, this means it
is no longer needed to avoid repeated indexing by logical arrays
using find for performance reasons.
** Logical matrices are now treated more efficiently when used as
indices. Octave will keep the index as a logical mask unless the
ratio of true elements is small enough, using a specialized
code. Previously, all logical matrices were always first converted
to index vectors. This results in savings in both memory and
computing time.
** The `sub2ind' and `ind2sub' functions were reimplemented as compiled
functions for better performance. These functions are now faster,
can deliver more economized results for ranges, and can reuse the
index cache mechanism described in previous paragraph.
** The built-in function equivalents to associative operators (`plus',
`times', `mtimes', `and', and `or') have been extended to accept
multiple arguments. This is especially useful for summing
(multiplying, etc.) lists of objects (of possibly distinct types):
matrix_sum = plus (matrix_list{:});
** An FTP object type based on libcurl has been implemented. These
objects allow ftp connections, downloads and uploads to be
managed. For example,
fp = ftp ("ftp.octave.org);
cd (fp, "gnu/octave");
mget (fp, "octave-3.2.3.tar.bz2");
close (fp);
** The default behavior of `assert (observed, expected)' has been
relaxed to employ less strict checking that does not require the
internals of the values to match. This avoids previously valid
tests from breaking due to new internal classes introduced in future
Octave versions.
For instance, all of these assertions were true in Octave 3.0.x
but false in 3.2.x due to new optimizations and improvements:
assert (2*linspace (1, 5, 5), 2*(1:5))
assert (zeros (0, 0), [])
assert (2*ones (1, 5), (2) (ones (1,5)))
** The behavior of library functions `ismatrix', `issquare', and
`issymmetric' has been changed for better consistency.
* The `ismatrix' function now returns true for all numeric,
logical and character 2-D or N-D matrices. Previously, `ismatrix'
returned false if the first or second dimension was zero.
Hence, `ismatrix ([])' was false,
while `ismatrix (zeros (1,2,0))' was true.
* The `issquare' function now returns a logical scalar, and is
equivalent to the expression
ismatrix (x) && ndims (x) == 2 && rows (x) == columns (x)
The dimension is no longer returned. As a result, `issquare ([])'
now yields true.
* The `issymmetric' function now checks for symmetry instead of
Hermitianness. For the latter, ishermitian was created. Also,
logical scalar is returned rather than the dimension, so
`issymmetric ([])' is now true.
** Function handles are now aware of overloaded functions. If a
function is overloaded, the handle determines at the time of its
reference which function to call. A non-overloaded version does not
need to exist.
** Overloading functions for built-in classes (double, int8, cell,
etc.) is now compatible with Matlab.
** Function handles can now be compared with the == and != operators,
as well as the `isequal' function.
** Performance of concatenation (using []) and the functions `cat',
`horzcat', and `vertcat' has been improved for multidimensional
arrays.
** The operation-assignment operators +=, -=, *= and /= now behave more
efficiently in certain cases. For instance, if M is a matrix and S a
scalar, then the statement
M += S;
will operate on M's data in-place if it is not shared by another
variable, usually increasing both time and memory efficiency.
Only selected common combinations are affected, namely:
matrix += matrix
matrix -= matrix
matrix .*= matrix
matrix ./= matrix
matrix += scalar
matrix -= scalar
matrix *= scalar
matrix /= scalar
logical matrix |= logical matrix
logical matrix &= logical matrix
where matrix and scalar belong to the same class. The left-hand
side must be a simple variable reference.
Moreover, when unary operators occur in expressions, Octave will
also try to do the operation in-place if it's argument is a
temporary expresssion.
** The effect of comparison operators (<, >, <=, and >=) applied to
complex numbers has changed to be consistent with the strict
ordering defined by the `max', `min', and `sort' functions. More
specifically, complex numbers are compared by lexicographical
comparison of the pairs `[abs(z), arg(z)]'. Previously, only real
parts were compared; this can be trivially achieved by wrapping the
operands in real().
** The automatic simplification of complex computation results has
changed. Octave will now simplify any complex number with a zero
imaginary part or any complex matrix with all elements having zero
imaginary part to a real value. Previously, this was done only for
positive zeros. Note that the behavior of the complex function is
unchanged and it still produces a complex value even if the
imaginary part is zero.
** As a side effect of code refactoring in liboctave, the binary
logical operations are now more easily amenable to compiler
optimizations and are thus significantly faster.
** Octave now allows user-defined `subsasgn' methods to optimize out
redundant copies. For more information, see the manual.
** More efficient matrix division handling. Octave is now able to
handle the expressions
M' \ V
M.' \ V
V / M
(M is a matrix and V is a vector) more efficiently in certain cases.
In particular, if M is triangular, all three expressions will be
handled by a single call to xTRTRS (from LAPACK), with appropriate
flags. Previously, all three expressions required a physical
transpose of M.
** More efficient handling of certain mixed real-complex matrix
operations. For instance, if RM is a real matrix and CM a complex
matrix,
RM * CM
can now be evaluated either as
complex (RM * real (CM), RM * imag (CM))
or as
complex (RM) * CM,
depending on the dimensions. The first form requires more
temporaries and copying, but halves the FLOP count, which normally
brings better performance if RM has enough rows. Previously, the
second form was always used.
Matrix division is similarly affected.
** More efficient handling of triangular matrix factors returned from
factorizations. The functions for computing QR, LU and Cholesky
factorizations will now automatically return the triangular matrix
factors with proper internal matrix_type set, so that it won't need
to be computed when the matrix is used for division.
** The built-in `sum' function now handles the non-native summation
(i.e., double precision sum of single or integer inputs) more
efficiently, avoiding a temporary conversion of the whole input
array to doubles. Further, `sum' can now accept an extra option
argument, using a compensated summation algorithm rather than a
straightforward sum, which significantly improves precision if lots
of cancellation occurs in the summation.
** The built-in `bsxfun' function now uses optimized code for certain
cases where built-in operator handles are passed in. Namely, the
optimizations concern the operators `plus', `minus', `times',
`ldivide', `rdivide', `power', `and', `or' (for logical arrays),
the relational operators `eq', `ne', `lt', `le', `gt', `ge', and the
functions `min' and `max'. Optimizations only apply when both
operands are of the same built-in class. Mixed real/complex and
single/double operations will first convert both operands to a
common type.
** The `strfind' and `strrep' functions now have compiled
implementations, facilitating significantly more efficient searching
and replacing in strings, especially with longer patterns. The code
of `strcat' has been vectorized and is now much more efficient when
many strings are concatenated. The `strcmpi' and `strncmpi'
functions are now built-in functions, providing better performance.
** Matlab-style ignoring input and output function arguments using
tilde (~) is now supported. Ignored output arguments may be
detected from a function using the built-in function `isargout'.
For more details, consult the manual.
** The list datatype, deprecated since the introduction of cells, has
been removed.
** The accumarray function has been optimized and is now significantly
faster in certain important cases.
** The behavior of isreal and isnumeric functions was changed to be more
Matlab-compatible.
** The integer math & conversion warnings (Octave:int-convert-nan,
Octave:int-convert-non-int-val, Octave:int-convert-overflow,
Octave:int-math-overflow) have been removed.
** rem and mod are now built-in functions. They also handle integer
types efficiently using integer arithmetic.
** Sparse indexing and indexed assignment has been mostly rewritten.
Since Octave uses compressed column storage for sparse matrices,
major attention is devoted to operations manipulating whole columns.
Such operations are now significantly faster, as well as some other
important cases.
Further, it is now possible to pre-allocate a sparse matrix and
subsequently fill it by assignments, provided they meet certain
conditions. For more information, consult the `spalloc' function,
which is no longer a mere dummy. Consequently, nzmax and nnz are no
longer always equal in Octave. Octave may also produce a matrix
with nnz < nzmax as a result of other operations, so you should
consistently use nnz unless you really want to use nzmax (i.e. the
space allocated for nonzero elements).
Sparse concatenation is also affected, and concatenating sparse
matrices, especially larger collections, is now significantly more
efficient. This applies to both the [] operator and the
cat/vertcat/horzcat functions.
** It is now possible to optionally employ the xGESDD LAPACK drivers
for computing the singular value decomposition using svd(), instead
of the default xGESVD, using the configuration pseudo-variable
svd_driver. The xGESDD driver can be up to 6x times faster when
singular vectors are requested, but is reported to be somewhat less
robust on highly ill-conditioned matrices.
** Configuration pseudo-variables, such as page_screen_output or
confirm_recursive_rmdir (or the above mentioned svd_driver), now
accept a "local" option as second argument, requesting the change
to be undone when the current function returns:
function [status, msg] = rm_rf (dir)
confirm_recursive_rmdir (false, "local");
[status, msg] = rmdir (dir, "s");
...
endfunction
Upon return, confirm_recursive_rmdir will be restored to the value
it had on entry to the function, even if there were subsequent
changes to the variable in function rm_rf or any of the functions
it calls.
** pkg now accepts a -forge option for downloading and installing
packages from Octave Forge automatically. For example,
pkg install -forge general
will automatically download the latest release of the general
package and attempt to install it. No automatic resolving of
dependencies is provided. Further,
pkg list -forge
can be used to list all available packages.
** The internal data representation of structs has been completely
rewritten to make certain optimizations feasible. The field data
can now be shared between structs with equal keys but different
dimensions or values, making operations that preserve the fields
faster. Economized storage is now used for scalar structs (just
like most other scalars), making their usage more
memory-efficient. Certain array-like operations on structs
(concatenation, uniform cellfun, num2cell) have gained a
significant speed-up. Additionally, the octave_scalar_map class
now provides a simpler interface to work with scalar structs within
a C++ DLD function.
** Two new formats are available for displaying numbers:
format short eng
format long eng
Both display numbers in engineering notation, i.e., mantissa +
exponent where the exponent is a multiple of 3.
** The following functions are new in Octave 3.4:
accumdim erfcx nfields pqpnonneg uigetdir
bitpack fileread nth_element quadcc uigetfile
bitunpack fminbnd onCleanup randi uiputfile
blkmm fskipl pbaspect repelems uimenu
cbrt ifelse pie3 reset whitebg
curl ishermitian powerset rsf2csf
chop isindex ppder saveas
daspect luupdate ppint strread
divergence merge ppjumps textread
** Using the image function to view images with external programs such
as display, xv, and xloadimage is no longer supported. The
image_viewer function has also been removed.
** The behavior of struct assignments to non-struct values has been
changed. Previously, it was possible to overwrite an arbitrary
value:
a = 1;
a.x = 2;
This is no longer possible unless a is an empty matrix or cell
array.
** The dlmread function has been extended to allow specifying a custom
value for empty fields.
** The dlmread and dlmwrite functions have been modified to accept
file IDs (as returned by fopen) in addition to file names.
** Octave can now optimize away the interpreter overhead of an
anonymous function handle, if the function simply calls another
function or handle with some of its parameters bound to certain
values. Example:
f = @(x) sum (x, 1);
When f is called, the call is forwarded to @sum with the constant 1
appended, and the anonymous function call does not occur on the
call stack.
** Deprecated functions.
The following functions were deprecated in Octave 3.0 and have been
removed from Octave 3.4.
beta_cdf geometric_pdf pascal_pdf
beta_inv geometric_rnd pascal_rnd
beta_pdf hypergeometric_cdf poisson_cdf
beta_rnd hypergeometric_inv poisson_inv
binomial_cdf hypergeometric_pdf poisson_pdf
binomial_inv hypergeometric_rnd poisson_rnd
binomial_pdf intersection polyinteg
binomial_rnd is_bool setstr
chisquare_cdf is_complex struct_contains
chisquare_inv is_list struct_elements
chisquare_pdf is_matrix t_cdf
chisquare_rnd is_scalar t_inv
clearplot is_square t_pdf
clg is_stream t_rnd
com2str is_struct uniform_cdf
exponential_cdf is_symmetric uniform_inv
exponential_inv is_vector uniform_pdf
exponential_pdf isstr uniform_rnd
exponential_rnd lognormal_cdf weibcdf
f_cdf lognormal_inv weibinv
f_inv lognormal_pdf weibpdf
f_pdf lognormal_rnd weibrnd
f_rnd meshdom weibull_cdf
gamma_cdf normal_cdf weibull_inv
gamma_inv normal_inv weibull_pdf
gamma_pdf normal_pdf weibull_rnd
gamma_rnd normal_rnd wiener_rnd
geometric_cdf pascal_cdf
geometric_inv pascal_inv
The following functions were deprecated in Octave 3.2 and will
be removed from Octave 3.6 (or whatever version is the second major
release after 3.2):
create_set spcholinv splu
dmult spcumprod spmax
iscommand spcumsum spmin
israwcommand spdet spprod
lchol spdiag spqr
loadimage spfind spsum
mark_as_command sphcat spsumsq
mark_as_rawcommand spinv spvcat
spatan2 spkron str2mat
spchol splchol unmark_command
spchol2inv split unmark_rawcommand
The following functions have been deprecated in Octave 3.4 and will
be removed from Octave 3.8 (or whatever version is the second major
release after 3.4):
autocor cellidx gammai krylovb values
autocov dispatch glpkmex replot
betai fstat is_global saveimage
* For compatibility with Matlab, mu2lin (x) is now equivalent to
mu2lin (x, 0).
* The ARPACK library is now distributed with Octave so it no longer
needs to be available as an external dependency when building
Octave.
2011-12-25 00:46:02 +01:00
|
|
|
|
|
|
|
TEST_TARGET= check
|
|
|
|
|
|
|
|
#pre-configure:
|
|
|
|
# cd ${WRKSRC} && autoconf
|
|
|
|
|
2012-10-27 15:01:35 +02:00
|
|
|
SUBST_CLASSES+= fix-make
|
2016-02-16 05:21:40 +01:00
|
|
|
SUBST_STAGE.fix-make= pre-configure
|
2012-10-27 15:01:35 +02:00
|
|
|
SUBST_MESSAGE.fix-make= Fixing path to gmake.
|
2016-02-16 05:21:40 +01:00
|
|
|
SUBST_FILES.fix-make= scripts/pkg/private/configure_make.m
|
2016-08-06 15:03:35 +02:00
|
|
|
SUBST_SED.fix-make= -e 's:@GMAKE@:${GMAKE}:g'
|
2012-10-27 15:01:35 +02:00
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
SUBST_CLASSES+= qt5-pkg-config
|
|
|
|
SUBST_STAGE.qt5-pkg-config= pre-configure
|
|
|
|
SUBST_MESSAGE.qt5-pkg-config= Updating pkg-config calls for Qt5
|
|
|
|
SUBST_FILES.qt5-pkg-config= configure.ac configure
|
|
|
|
SUBST_SED.qt5-pkg-config= -e 's,QtCore,Qt5Core,g'
|
|
|
|
SUBST_SED.qt5-pkg-config+= -e 's,QtGui,Qt5Widgets,g'
|
|
|
|
SUBST_SED.qt5-pkg-config+= -e 's,QtNetwork,Qt5Network,g'
|
|
|
|
SUBST_SED.qt5-pkg-config+= -e 's,QtOpenGL,Qt5OpenGL,g'
|
|
|
|
|
2016-03-22 19:58:27 +01:00
|
|
|
# Matches reduce-relocations logic in x11/qt5-qtbase
|
|
|
|
.if ${OPSYS} != "Darwin" && ${OPSYS} != "SunOS" && \
|
|
|
|
(!empty(MACHINE_ARCH:Mi386) || !empty(MACHINE_ARCH:Mx86_64))
|
|
|
|
CFLAGS+= -fPIC
|
|
|
|
.endif
|
|
|
|
|
2016-02-16 05:21:40 +01:00
|
|
|
PREPEND_PATH+= ${QTDIR}/bin
|
|
|
|
|
|
|
|
MAKE_ENV+= V=1
|
|
|
|
|
|
|
|
#post-extract:
|
|
|
|
# find ${WRKSRC}/doc -type f -name '*.info*' -print | xargs rm -f
|
|
|
|
# mkdir ${WRKSRC}/src/pic
|
|
|
|
|
|
|
|
post-install:
|
|
|
|
.for f in ${OCTAVE_DOC}
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/${f} ${DESTDIR}${PREFIX}/share/octave/${PKGVERSION_NOREV}/doc
|
|
|
|
.endfor
|
2017-07-03 15:40:00 +02:00
|
|
|
${RM} -f ${DESTDIR}/${PREFIX}/lib/charset.alias
|
2003-11-10 02:04:05 +01:00
|
|
|
|
2005-04-01 12:15:46 +02:00
|
|
|
.include "../../audio/libsndfile/buildlink3.mk"
|
|
|
|
.include "../../devel/ncurses/buildlink3.mk"
|
2012-06-07 01:14:10 +02:00
|
|
|
.include "../../devel/pcre/buildlink3.mk"
|
Changes 3.0.0:
* Compatibility with Matlab graphics is much better now. We now
have some graphics features that work like Matlab's Handle
Graphics (tm):
* The way Octave handles search paths has changed.
* Previous versions of Octave had a number of built-in variables to
control warnings (for example, warn_divide_by_zero). These
variables have been replaced by warning identifiers that are used
with the warning function to control the state of warnings.
* All built-in variables have been converted to functions.
* For compatibility with Matlab, the output order of Octave's
"system" function has changed.
* For compatibility with Matlab, the output of Octave's fsolve
function has been changed.
* For compatibility with Matlab, normcdf, norminv, normpdf, and
normrnd have been modified to compute distributions using the
standard deviation instead of the variance.
* For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
expcdf, expinv, exppdf and exprnd have been modified to compute
the distributions using the standard scale factor rather than
one over the scale factor.
2008-01-11 02:23:43 +01:00
|
|
|
.include "../../devel/readline/buildlink3.mk"
|
|
|
|
.include "../../devel/zlib/buildlink3.mk"
|
2016-08-06 15:03:35 +02:00
|
|
|
.include "../../graphics/hicolor-icon-theme/buildlink3.mk"
|
2016-02-16 05:21:40 +01:00
|
|
|
.include "../../math/arpack/buildlink3.mk"
|
2005-04-01 12:15:46 +02:00
|
|
|
.include "../../math/blas/buildlink3.mk"
|
|
|
|
.include "../../math/fftw/buildlink3.mk"
|
2016-02-16 05:21:40 +01:00
|
|
|
.include "../../math/fftwf/buildlink3.mk"
|
2005-04-01 12:15:46 +02:00
|
|
|
.include "../../math/lapack/buildlink3.mk"
|
2009-04-12 22:46:20 +02:00
|
|
|
.include "../../www/curl/buildlink3.mk"
|
2016-02-16 05:21:40 +01:00
|
|
|
.if ${OPSYS} != "Darwin"
|
2009-07-19 02:33:10 +02:00
|
|
|
.include "../../x11/libX11/buildlink3.mk"
|
2016-02-16 05:21:40 +01:00
|
|
|
.endif
|
|
|
|
.include "../../x11/qt5-qtbase/buildlink3.mk"
|
|
|
|
BUILDLINK_DEPMETHOD.qt5-qttools?=build
|
|
|
|
.include "../../x11/qt5-qttools/buildlink3.mk"
|
|
|
|
BUILDLINK_DEPMETHOD.gperf?=build
|
|
|
|
.include "../../devel/gperf/buildlink3.mk"
|
|
|
|
.include "../../x11/fltk13/buildlink3.mk"
|
2009-07-19 02:33:10 +02:00
|
|
|
|
2009-10-12 11:28:02 +02:00
|
|
|
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
|
2001-01-26 23:54:00 +01:00
|
|
|
.include "../../mk/bsd.pkg.mk"
|