pkgsrc/math/R/Makefile

148 lines
5 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.141 2013/07/15 02:02:25 ryoon Exp $
Update to 2.15.1 Approved by wiz@ Upstream changes: CHANGES IN R VERSION 2.15.1: NEW FEATURES: o source() now uses withVisible() rather than .Internal(eval.with.vis). This sometimes alters tracebacks slightly. o install.packages("pkg_version.tgz") on Mac OS X now has sanity checks that this is actually a binary package (as people have tried it with incorrectly named source packages). o splineDesign() and spline.des() in package splines have a new option sparse which can be used for efficient construction of a sparse B-spline design matrix (_via_ Matrix). o norm() now allows type = "2" (the 'spectral' or 2-norm) as well, mainly for didactical completeness. o pmin() and pmax()) now also work when one of the inputs is of length zero and others are not, returning a zero-length vector, analogously to, say, +. o colorRamp() (and hence colorRampPalette()) now also works for the boundary case of just one color when the ramp is flat. o qqline() has new optional arguments distribution, probs and qtype, following the example of lattice's panel.qqmathline(). o .C() gains some protection against the misuse of character vector arguments. (An all too common error is to pass character(N), which initializes the elements to "", and then attempt to edit the strings in-place, sometimes forgetting to terminate them.) o Calls to the new function globalVariables() in package utils declare that functions and other objects in a package should be treated as globally defined, so that CMD check will not note them. o print(packageDescription(*)) trims the Collate field by default. o The included copy of zlib has been updated to version 1.2.7. o A new option "show.error.locations" has been added. When set to TRUE, error messages will contain the location of the most recent call containing source reference information. (Other values are supported as well; see ?options.) o The NA warning messages from e.g. pchisq() now report the call to the closure and not that of the .Internal. o Added Polish translations by <c5><81>ukasz Daniel. PERFORMANCE IMPROVEMENTS: o In package parallel, makeForkCluster() and the multicore-based functions use native byte-order for serialization (deferred from 2.15.0). o lm.fit(), lm.wfit(), glm.fit() and lsfit() do less copying of objects, mainly by using .Call() rather than .Fortran(). o .C() and .Fortran() do less copying: arguments which are raw, logical, integer, real or complex vectors and are unnamed are not copied before the call, and (named or not) are not copied after the call. Lists are no longer copied (they are supposed to be used read-only in the C code). o tabulate() makes use of .C(DUP = FALSE) and hence does not copy bin. (Suggested by Tim Hesterberg.) It also avoids making a copy of a factor argument bin. o Other functions (often or always) doing less copying include cut(), dist(), the complex case of eigen(), hclust(), image(), kmeans(), loess(), stl() and svd(LINPACK = TRUE). o There is less copying when using primitive replacement functions such as names(), attr() and attributes(). DEPRECATED AND DEFUNCT: o The converters for use with .C() (see ?getCConverterDescriptions) are deprecated: use the .Call() interface instead. There are no known examples (they were never fully documented). UTILITIES: o For R CMD check, a few people have reported problems with junctions on Windows (although they were tested on Windows 7, XP and Server 2008 machines and it is unknown under what circumstances the problems occur). Setting the environment variable R_WIN_NO_JUNCTIONS to a non-empty value (e.g. in ~/.R/check.Renviron) will force copies to be used instead. INSTALLATION: o R CMD INSTALL with _R_CHECK_INSTALL_DEPENDS_ set to a true value (as done by R CMD check --as-cran) now restricts the packages available when lazy-loading as well as when test-loading (since packages such as ETLUtils and agsemisc had top-level calls to library() for undeclared packages). This check is now also available on Windows. C-LEVEL FACILITIES: o C entry points mkChar and mkCharCE now check that the length of the string they are passed does not exceed 2^31-1 bytes: they used to overflow with unpredictable consequences. o C entry points R_GetCurrentSrcref and R_GetSrcFilename have been added to the API to allow debuggers access to the source references on the stack. WINDOWS-SPECIFIC CHANGES: o Windows-specific changes will now be announced in this file (NEWS). Changes up and including R 2.15.0 remain in the CHANGES file. o There are two new environment variables which control the defaults for command-line options. If R_WIN_INTERNET2 is set to a non-empty value, it is as if --internet2 was used. If R_MAX_MEM_SIZE is set, it gives the default memory limit if --max-mem-size is not specified: invalid values being ignored. BUG FIXES: o lsfit() lost the names from the residuals. o More cases in which merge() could create a data frame with duplicate column names now give warnings. Cases where names specified in by match multiple columns are errors. o Nonsense uses such as seq(1:50, by = 5) (from package plotrix) and seq.int(1:50, by = 5) are now errors. o The residuals in the 5-number summary printed by summary() on an "lm" object are now explicitly labelled as weighted residuals when non-constant weights are present. (Wish of PR#14840.) o tracemem() reported that all objects were copied by .C() or .Fortran() whereas only some object types were ever copied. It also reported and marked as copies _some_ transformations such as rexp(n, x): it no longer does so. o The plot() method for class "stepfun" only used the optional xval argument to compute xlim and not the points at which to plot (as documented). (PR#14864) o Names containing characters which need to be escaped were not deparsed properly. (PR#14846) o Trying to update (recommended) packages in R_HOME/library without write access is now dealt with more gracefully. Further, such package updates may be skipped (with a warning), when a newer installed version is already going to be used from .libPaths(). (PR#14866) o hclust() is now fast again (as up to end of 2003), with a different fix for the "median"/"centroid" problem. (PR#4195). o get_all_vars() failed when the data came entirely from vectors in the global environment. (PR#14847) o R CMD check with _R_CHECK_NO_RECOMMENDED_ set to a true value (as done by the --as-cran option) could issue false errors if there was an indirect dependency on a recommended package. o formatC() uses the C entry point str_signif which could write beyond the length allocated for the output string. o Missing default argument added to implicit S4 generic for backsolve(). (PR#14883) o Some bugs have been fixed in handling load actions that could fail to export assigned items or generate spurious warnings in CMD check on loading. o For tiff(type = "windows"), the numbering of per-page files except the last was off by one. o On Windows, loading package stats (which is done for a default session) would switch line endings on stdout and stderr from CRLF to LF. This affected Rterm and R CMD BATCH. o On Windows, the compatibility function x11() had not kept up with changes to windows(), and issued warnings about bad parameters. (PR#14880) o On Windows, the Sys.glob() function did not handle UNC paths as it was designed to try to do. (PR#14884) o In package parallel, clusterApply() and similar failed to handle a (pretty pointless) length-1 argument. (PR#14898) o Quartz Cocoa display reacted asynchronously to dev.flush() which means that the redraw could be performed after the plot has been already modified by subsequent code. The redraw is now done synchronously in dev.flush() to allow animations without sleep cycles. o Source locations reported in traceback() were incorrect when byte-compiled code was on the stack. o plogis(x, lower = FALSE, log.p = TRUE) no longer underflows early for large x (e.g. 800). o ?Arithmetic's "1 ^ y and y ^ 0 are 1, _always_" now also applies for integer vectors y. o X11-based pixmap devices like png(type = "Xlib") were trying to set the cursor style, which triggered some warnings and hangs. o Code executed by the built-in HTTP server no longer allows other HTTP clients to re-enter R until the current worker evaluation finishes, to prevent cascades. o The plot() and Axis() methods for class "table" now respect graphical parameters such as cex.axis. (Reported by Martin Becker.) o Under some circumstances package.skeleton() would give out progress reports that could not be translated and so were displayed by question marks. Now they are always in English. (This was seen for CJK locales on Windows, but may have occurred elsewhere.) o The evaluator now keeps track of source references outside of functions, e.g. when source() executes a script. o The replacement method for window() now works correctly for multiple time series of class "mts". (PR#14925) o is.unsorted() gave incorrect results on non-atomic objects such as data frames. (Reported by Matthew Dowle.) o The value returned by tools::psnice() for invalid pid values was not always NA as documented. o Closing an X11() window while locator() was active could abort the R process. o getMethod(f, sig) produced an incorrect error message in some cases when f was not a string). o Using a string as a "call" in an error condition with options(showErrorCalls=TRUE) could cause a segfault. (PR#14931) o The string "infinity" allowed by C99 was not accepted as a numerical string value by e.g. scan() and as.character(). (PR#14933) o In legend(), setting some entries of lwd to NA was inconsistent (depending on the graphics device) in whether it would suppress those lines; now it consistently does so. (PR#14926) o by() failed for a zero-row data frame. (Reported by Weiqiang Qian) o Yates correction in chisq.test() could be bigger than the terms it corrected, previously leading to an infinite test statistic in some corner cases which are now reported as NaN. o xgettext() and related functions sometimes returned items that were not strings for translation. (PR#14935) o plot(<lm>, which=5) now correctly labels the factor level combinations for the special case where all h[i,i] are the same. (PR#14837) CHANGES IN R VERSION 2.15.0: SIGNIFICANT USER-VISIBLE CHANGES: o The behaviour of unlink(recursive = TRUE) for a symbolic link to a directory has changed: it now removes the link rather than the directory contents (just as rm -r does). On Windows it no longer follows reparse points (including junctions and symbolic links). NEW FEATURES: o Environment variable RD2DVI_INPUTENC has been renamed to RD2PDF_INPUTENC. o .Deprecated() becomes a bit more flexible, getting an old argument. o Even data-only packages without R code need a namespace and so may need to be installed under R 2.14.0 or later. o assignInNamespace() has further restrictions on use apart from at top-level, as its help page has warned. Expect it to be disabled from programmatic use in the future. o system() and system2() when capturing output report a non-zero status in the new "status" attribute. o kronecker() now has an S4 generic in package methods on which packages can set methods. It will be invoked by X %x% Y if either X or Y is an S4 object. o pdf() accepts forms like file = "|lpr" in the same way as postscript(). o pdf() accepts file = NULL. This means that the device does NOT create a PDF file (but it can still be queried, e.g., for font metric info). o format() (and hence print()) on "bibentry" objects now uses options("width") to set the output width. o legend() gains a text.font argument. (Suggested by Tim Paine, PR#14719.) o nchar() and nzchar() no longer accept factors (as integer vectors). (Wish of PR#6899.) o summary() behaves slightly differently (or more precisely, its print() method does). For numeric inputs, the number of NAs is printed as an integer and not a real. For dates and datetimes, the number of NAs is included in the printed output (the latter being the wish of PR#14720). The "data.frame" method is more consistent with the default method: in particular it now applies zapsmall() to numeric/complex summaries. o The number of items retained with options(warn = 0) can be set by options(nwarnings=). o There is a new function assignInMyNamespace() which uses the namespace of the function it is called from. o attach() allows the default name for an attached file to be overridden. o bxp(), the work horse of boxplot(), now uses a more sensible default xlim in the case where at is specified differently from 1:n, see the discussion on R-devel, <URL: https://stat.ethz.ch/pipermail/r-devel/2011-November/062586.html>. o New function paste0(), an efficient version of paste(*, sep=""), to be used in many places for more concise (and slightly more efficient) code. o Function setClass() in package methods now returns, invisibly, a generator function for the new class, slightly preferred to calling new(), as explained on the setClass help page. o The "dendrogram" method of str() now takes its default for last.str from option str.dendrogram.last. o New simple fitted() method for "kmeans" objects. o The traceback() function can now be called with an integer argument, to display a current stack trace. (Wish of PR#14770.) o setGeneric() calls can be simplified when creating a new generic function by supplying the default method as the def argument. See ?setGeneric. o serialize() has a new option xdr = FALSE which will use the native byte-order for binary serializations. In scenarios where only little-endian machines are involved (these days, close to universal) and (un)serialization takes an appreciable amount of time this may speed up noticeably transferring data between systems. o The internal (un)serialization code is faster for long vectors, particularly with XDR on some platforms. (Based on a suggested patch by Michael Spiegel.) o For consistency, circles with zero radius are omitted by points() and grid.circle(). Previously this was device-dependent, but they were usually invisible. o NROW(x) and NCOL(x) now work whenever dim(x) looks appropriate, e.g., also for more generalized matrices. o PCRE has been updated to version 8.30. o The internal R_Srcref variable is now updated before the browser stops on entering a function. (Suggestion of PR#14818.) o There are 'bare-bones' functions .colSums(), .rowSums(), .colMeans() and .rowMeans() for use in programming where ultimate speed is required. o The formerly internal function .package_dependencies() from package tools for calculating (recursive) (reverse) dependencies on package databases has been renamed to package_dependencies() and is now exported. o There is a new function optimHess() to compute the (approximate) Hessian for an optim() solution if hessian = TRUE was forgotten. o .filled.contour() is a 'bare-bones' function to add a filled-contour rectangular plot to an already prepared plot region. o The stepping in debugging and single-step browsing modes has changed slightly: now left braces at the start of the body are stepped over for if statements as well as for for and while statements. (Wish of PR#14814.) o library() no longer warns about a conflict with a function from package:base if the function has the same code as the base one but with a different environment. (An example is Matrix::det().) o When deparsing very large language objects, as.character() now inserts newlines after each line of approximately 500 bytes, rather than truncating to the first line. o New function rWishart() generates Wishart-distributed random matrices. o Packages may now specify actions to be taken when the package is loaded (setLoadActions()). o options(max.print = Inf) and similar now give an error (instead of warnings later). o The "difftime" replacement method of units tries harder to preserve other attributes of the argument. (Wish of PR#14839.) o poly(raw = TRUE) no longer requires more unique points than the degree. (Requested by John Fox.) PACKAGE parallel: o There is a new function mcmapply(), a parallel version of mapply(), and a wrapper mcMap(), a parallel version of Map(). o A default cluster can be registered by the new function setDefaultCluster(): this will be used by default in functions such as parLapply(). o clusterMap() has a new argument .scheduling to allow the use of load-balancing. o There are new load-balancing functions parLapplyLB() and parSapplyLB(). o makePSOCKCluster() has a new option useXDR = FALSE which can be used to avoid byte-shuffling for serialization when all the nodes are known to be little-endian (or all big-endian). PACKAGE INSTALLATION: o Non-ASCII vignettes without a declared encoding are no longer accepted. o C/C++ code in packages is now compiled with -NDEBUG to mitigate against the C/C++ function assert being called in production use. Developers can turn this off during package development with PKG_CPPFLAGS = -UNDEBUG. o R CMD INSTALL has a new option --dsym which on Mac OS X (Darwin) dumps the symbols alongside the .so file: this is helpful when debugging with valgrind (and especially when installing packages into R.framework). [This can also be enabled by setting the undocumented environment variable PKG_MAKE_DSYM, since R 2.12.0.] o R CMD INSTALL will test loading under all installed sub-architectures even for packages without compiled code, unless the flag --no-multiarch is used. (Pure R packages can do things which are architecture-dependent: in the case which prompted this, looking for an icon in a Windows R executable.) o There is a new option install.packages(type = "both") which tries source packages if binary packages are not available, on those platforms where the latter is the default. o The meaning of install.packages(dependencies = TRUE) has changed: it now means to install the essential dependencies of the named packages plus the Suggests, but only the essential dependencies of dependencies. To get the previous behaviour, specify dependencies as a character vector. o R CMD INSTALL --merge-multiarch is now supported on OS X and other Unix-alikes using multiple sub-architectures. o R CMD INSTALL --libs-only now by default does a test load on Unix-alikes as well as on Windows: suppress with --no-test-load. UTILITIES: o R CMD check now gives a warning rather than a note if it finds inefficiently compressed datasets. With bzip2 and xz compression having been available since R 2.10.0, it only exceptionally makes sense to not use them. The environment variable _R_CHECK_COMPACT_DATA2_ is no longer consulted: the check is always done if _R_CHECK_COMPACT_DATA_ has a true value (its default). o Where multiple sub-architectures are to be tested, R CMD check now runs the examples and tests for all the sub-architectures even if one fails. o R CMD check can optionally report timings on various parts of the check: this is controlled by environment variable _R_CHECK_TIMINGS_ documented in 'Writing R Extensions'. Timings (in the style of R CMD BATCH) are given at the foot of the output files from running each test and the R code in each vignette. o There are new options for more rigorous testing by R CMD check selected by environment variables - see the 'Writing R Extensions' manual. o R CMD check now warns (rather than notes) on undeclared use of other packages in examples and tests: increasingly people are using the metadata in the DESCRIPTION file to compute information about packages, for example reverse dependencies. o The defaults for some of the options in R CMD check (described in the 'R Internals' manual) have changed: checks for unsafe and .Internal() calls and for partial matching of arguments in R function calls are now done by default. o R CMD check has more comprehensive facilities for checking compiled code and so gives fewer reports on entry points linked into .so/.dll files from libraries (including C++ and Fortran runtimes). Checking compiled code is now done on FreeBSD (as well as the existing supported platforms of Linux, Mac OS X, Solaris and Windows). o R CMD build has more options for --compact-vignettes: see R CMD build --help. o R CMD build has a new option --md5 to add an MD5 file (as done by CRAN): this is used by R CMD INSTALL to check the integrity of the distribution. If this option is not specified, any existing (and probably stale) MD5 file is removed. DEPRECATED AND DEFUNCT: o R CMD Rd2dvi is now defunct: use R CMD Rd2pdf. o Options such --max-nsize, --max-vsize and the function mem.limits() are now defunct. (Options --min-nsize and --min-vsize remain available.) o Use of library.dynam() without specifying all the first three arguments is now disallowed. Use of an argument chname in library.dynam() including the extension .so or .dll (which was never allowed according to the help page) is defunct. This also applies to library.dynam.unload() and to useDynLib directives in NAMESPACE files. o The internal functions .readRDS() and .saveRDS() are now defunct. o The off-line help() types "postscript" and "ps" are defunct. o Sys.putenv(), replaced and deprecated in R 2.5.0, is finally removed. o Some functions/objects which have been defunct for five or more years have been removed completely. These include .Alias(), La.chol(), La.chol2inv(), La.eigen(), Machine(), Platform(), Version, codes(), delay(), format.char(), getenv(), httpclient(), loadURL(), machine(), parse.dcf(), printNoClass(), provide(), read.table.url(), restart(), scan.url(), symbol.C(), symbol.For() and unix(). o The ENCODING argument to .C() is deprecated. It was intended to smooth the transition to multi-byte character strings, but can be replaced by the use of iconv() in the rare cases where it is still needed. INSTALLATION: o Building with a positive value of --with-valgrind-instrumentation now also instruments logical, complex and raw vectors. C-LEVEL FACILITIES: o Passing R objects other than atomic vectors, functions, lists and environments to .C() is now deprecated and will give a warning. Most cases (especially NULL) are actually coding errors. NULL will be disallowed in future. .C() now passes a pairlist as a SEXP to the compiled code. This is as was documented, but pairlists were in reality handled differently as a legacy from the early days of R. o call_R and call_S are deprecated. They still exist in the headers and as entry points, but are no longer documented and should not be used for new code. BUG FIXES: o str(x, width) now obeys its width argument also for function headers and other objects x where deparse() is applied. o The convention for x %/% 0L for integer-mode x has been changed from 0L to NA_integer_. (PR#14754) o The exportMethods directive in a NAMESPACE file now exports S4 generics as necessary, as the extensions manual said it does. The manual has also been updated to be a little more informative on this point. It is now required that there is an S4 generic (imported or created in the package) when methods are to be exported. o Reference methods cannot safely use non-exported entries in the namespace. We now do not do so, and warn in the documentation. o The namespace import code was warning when identical S4 generic functions were imported more than once, but should not (reported by Brian Ripley, then Martin Morgan). o merge() is no longer allowed (in some ways) to create a data frame with duplicate column names (which confused PR#14786). o Fixes for rendering raster images on X11 and Windows devices when the x-axis or y-axis scale is reversed. o getAnywhere() found S3 methods as seen from the utils namespace and not from the environment from which it was called. o selectMethod(f, sig) would not return inherited group methods when caching was off (as it is by default). o dev.copy2pdf(out.type = "cairo") gave an error. (PR#14827) o Virtual classes (e.g., class unions) had a NULL prototype even if that was not a legal subclass. See ?setClassUnion. o The C prototypes for zdotc and zdotu in R_ext/BLAS.h have been changed to the more modern style rather than that used by f2c. (Patch by Berwin Turlach.) o isGeneric() produced an error for primitives that can not have methods. o .C() or .Fortran() had a lack-of-protection error if the registration information resulted in an argument being coerced to another type. o boxplot(x=x, at=at) with non finite elements in x and non integer at could not generate a warning but failed. o heatmap(x, symm=TRUE, RowSideColors=*) no longer draws the colors in reversed order. o predict(<ar>) was incorrect in the multivariate case, for p >= 2. o print(x, max=m) is now consistent when x is a "Date"; also the "reached ... max.print .." messages are now consistently using single brackets. o Closed the <li> tag in pages generated by Rd2HTML(). (PR#14841.) o Axis tick marks could go out of range when a log scale was used. (PR#14833.) o Signature objects in methods were not allocated as S4 objects (caused a problem with trace() reported by Martin Morgan).
2012-12-17 10:08:46 +01:00
DISTNAME= R-2.15.1
PKGREVISION= 7
CATEGORIES= math
MASTER_SITES= ${MASTER_SITE_R_CRAN:=base/R-2/}
2003-07-17 23:41:05 +02:00
MAINTAINER= markd@NetBSD.org
2000-11-03 02:14:51 +01:00
HOMEPAGE= http://www.R-project.org/
COMMENT= Statistical language for data analysis and graphics
LICENSE= gnu-gpl-v2
#needs FPC code not found in older versions of NetBSD
NOT_FOR_PLATFORM= NetBSD-1.[0-4]*-alpha NetBSD-1.5-alpha \
NetBSD-1.5.*-alpha NetBSD-1.5[A-U]-alpha
2004-05-18 13:27:29 +02:00
PKG_INSTALLATION_TYPES= overwrite pkgviews
BUILD_TARGET= all info
INSTALL_TARGET= install install-info
TEST_TARGET= check
2007-09-08 15:44:48 +02:00
USE_TOOLS+= gmake gzip:run makeinfo perl:run sed unzip:run xmkmf
2011-12-07 11:18:23 +01:00
USE_TOOLS+= pkg-config
USE_GNU_ICONV= yes # latin1 support, iconvlist
USE_LANGUAGES= c c++ fortran
USE_LIBTOOL= yes
TEXINFO_REQD= 4.7
INFO_FILES= yes
PTHREAD_AUTO_VARS= yes
GNU_CONFIGURE= yes
Update R to version 1.6.1. Pkgsrc changes: Now builds the libR.so and provides a buildlink2.mk for packages that want to use it. From suggestions from Kent Polk. Recommended library set is now included in the base package. Changes: CHANGES IN R VERSION 1.6.1 NEW FEATURES o Added a few "trivial and obviously missing" functions to tcltk: tkchooseDirectory, tkpopup, tkdialog, tkread o barplot() has a new argument `axis.lty', which if set to 1 allows the pre-1.6.0 behaviour of plotting the axis and tick marks for the categorical axis. (This was apparently not intentional, but axis() used to ignore lty=0.) The argument `border' is no longer ".NotYetUsed". CHANGES IN R VERSION 1.6.0 USER-VISIBLE CHANGES o The default colour palette now has "grey" instead of "white" in location 8. See palette(). o grid(nx) behaves differently (but the same as in R versions <= 0.64). NEW FEATURES o Preparations for name space support: o The objects created in the methods package to represent classes, generic functions, method definitions, and inheritance relations now themselves belong to true classes. In particular, the "classRepresentation" objects follow the description in "Programming with Data" (section 7.6). o Other additions and changes to the methods package: o New methods ([[, print, str) and extended plot() method (incl. logical `horiz') for "dendrogram" class. o sprintf() now checks the agreement between formats and object types, and handles special values (NA, Inf, ...) correctly. o chol() now uses a tolerance for non-positive-definiteness and so should give more consistent results across platforms. o New function agrep() for approximate (fuzzy) string matching. o help.search() can now use both approximate (fuzzy) and regular expression matching. By default, if the pattern to be matched consists of only alphanumeric characters, whitespace or a dash, approximate matching is used. o axis() has three new optional arguments `col', `lty', and `lwd' all for drawing the axis line and tick marks. o Function vcov() (formerly in MASS), a generic function to return the variance-covariance matrix of the parameter estimates of a fitted model. o duplicated() and unique() have methods for matrices and arrays (based on ideas from Jens Oehlschl<E4>gel). o Internally memory sizes and counts of cons cells are now stored in unsigned longs. This allows memory limits to be set and objects created in the range 2-4Gb on 32-bit platforms, and allows 64-bit platforms to use much larger amounts of memory. o Command-line flags to set memory can now use the suffix `G' for gigabytes. The setting of maximum vsize is now only limited by the platform's address space. o All warning and error messages are truncated to a length set by options(warning.length=), defaulting to 1000. (Previously most (but not quite all) were truncated at 8192 characters.) o [dpqr]gamma() check for shape parameter > 0. o as.POSIX[cl]t can now convert logical NAs. o All installed packages (even those shipped with R) are given a `Built' field in the DESCRIPTION file. o as.data.frame() now coerces logical matrices into logical columns (rather than factors). o [[<-.data.frame no longer coerces character replacement values to factor. This is consistent with using $ to replace and with S4. o library() attempts to detect improperly installed packages, so as from this version an installed package must have a DESCRIPTION file and that file must have been stamped with a `Built:' line (which was introduced in 1.2.0). Under Unix-alikes, the platform is checked against that used for installation. o print.factor() has new arguments `max.levels' (with a smart default) and `width'. print.ordered() is no longer needed. o RNGkind() has an additional option for normal random generators: "Inversion". o data.frame() recycles factors and "AsIs" objects as well as atomic vectors. o rect() accepts additional graphics parameters through a ... argument (in the same way as polygon). o strwidth/strheight() now coerce their first argument in exactly the same way text() does, so a wider range of inputs is allowed. o prompt()'s default and data.frame methods have a new 3rd argument `name' allowing them to used more easily in scripts and loops. o rgb() has a new `maxColorValue' argument, allowing r,g,b in [0,M], particularly in {0:255}, efficiently and non-error-prone. o summaryRprof() provides the functionality of R CMD Rprof in R code, though more slowly. o pdf() now uses PDF not R code for clipping, which ensures that partially visible text strings are (partially) shown. o Each R session uses a per-session temporary directory which is removed at normal termination. The directory name is given by the tempdir() function, and filenames returned by tempfile() will be within that directory. o help.start() on Unix now uses a .R subdirectory of the per-session temporary directory and not ~/.R. A side effect is that ~/.R is now never deleted by R. o cbind/rbind() used to ignore all zero-length vectors, an undocumented quirk for S-compatibility. This caused problems when combining zero-extent matrices and zero-length vectors, and now zero-length vectors are ignored unless the result would have zero rows/columns. o plot.spec(x) now also works for other x than AR and Pgram results. o New functions La.chol() and La.chol2inv() for Cholesky decomposition and inverse of positive definite matrices using Lapack. o Changes to the tcltk package o New function axTicks() returning tick mark locations like axis(). o grid() has a more sensible default behavior. Tick axis alignment only happens when no numbers of grid cells are specified. New arguments lwd and equilogs; nx/ny = NA for not drawing, see ?grid. o installed.packages() has a new argument `priority'. o termplot() uses factor levels rather than 1,2,3... for x-axis. o The trace() function has been robustified and a new function tracingState() added to turn tracing temporarily on and off. o New cophenetic() in "mva" as utility for hierarchical clustering. o p.adjust() has two new methods, 'Hommel' and 'FDR', contributed by Gordon Smyth <smyth@wehi.edu.au>. o stars() now has add and plot arguments. and lots of bug fixes.
2002-12-10 12:58:10 +01:00
CONFIGURE_ARGS+= --enable-R-shlib
CONFIGURE_ARGS+= --with-x
CONFIGURE_ARGS+= --with-readline
CONFIGURE_ARGS+= --with-tcltk
CONFIGURE_ARGS+= --with-tcl-config=${BUILDLINK_PREFIX.tcl}/lib/tclConfig.sh
CONFIGURE_ARGS+= --with-tk-config=${BUILDLINK_PREFIX.tk}/lib/tkConfig.sh
CONFIGURE_ARGS+= --without-gnome # not yet stable
CONFIGURE_ARGS+= --with-system-zlib
CONFIGURE_ARGS+= --with-system-bzlib
CONFIGURE_ARGS+= --with-system-pcre
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
CONFIGURE_ARGS+= --with-system-xz
# Disable Mac OS specific support used by R.app
CONFIGURE_ARGS+= --disable-R-framework
CONFIGURE_ARGS+= --without-aqua
# Use BLAS (math/blas)
CONFIGURE_ARGS+= --without-atlas
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
CONFIGURE_ARGS+= --disable-BLAS-shlib
CONFIGURE_ARGS+= --with-blas
CONFIGURE_ARGS+= --without-blas_risc
CONFIGURE_ARGS+= --without-dxml
CONFIGURE_ARGS+= --without-libmoto
# Work around missing MAIN__() definition used in -lF77 by AC_CHECK_LIB.
Update to R 2.7.2 NEW FEATURES o sprintf() returns elements of the result in UTF-8 when the format or any character input has a corresponding element declared as UTF-8. Similarly for paste(), elements of the result are in UTF-8 when any input to that element is declared as UTF-8. o axis() has new arguments 'col.ticks' and 'lwd.ticks' to allow the colour and line width of ticks to be set separately from that of the line (e.g. to set one or the other to transparent or zero width). o legend() has a new argument 'box.col' to set the colour of the enclosing box. o legend() gains a 'xpd' argument to make it easier to place a legend in the margins or outer margins. o stripchart() now passes '...' to title() (as well as to plot.default() and axis()). (Wish of PR#12202) o help.search() has new argument 'searchEngine' to go directly to the search form: this is needed by users of Firefox 3 to workaround a bug in interpreting the search results pages. + BUG FIXES 2.7.1 NEW FEATURES o tools::texi2dvi() has a new argument 'texinputs' to allow the TeX and bibtex input paths to be specified (even on MiKTeX). o dev.copy2pdf() gains an 'out.type' argument to allow it to be used with cairo_pdf() or quartz(type = "pdf"). o poly() has additional checks against user error (as in PR#11243). o The Mac OS quartz() device draws contiguous lines much faster. o A field containing just a sign is no longer regarded as numeric (it was on all platforms in 2.7.0, but not on most in earlier versions of R). Similarly, '.' is now always non-numeric. o CITATION files are now read in Latin-1: quite a few were failing if used in a multibyte locale such as UTF-8. o The DESCRIPTION file of a package can specify an 'OS_type' field as either 'unix' or 'windows' to confine installation to that OS type. o HoltWinters() now uses optimize() rather than optim for one-parameter problems which should be more reliable (PR#11469). o axis() now respects the setting of par("xpd") when clipping. o The 'factor' method of format() now preserves names, dims and dimnames in the same way as for character and numeric inputs. (PR#11512) o read.DIF(*, transpose=TRUE) now allows to correctly read DIF files produced by some versions of Excel. DEPRECATED & DEFUNCT o The use of unserialize() on character strings is deprecated: that was a format used in R < 2.4.0. o The use of embedded nuls in character strings is deprecated: They will no longer be allowed in R 2.8.0. UTILITIES o R CMD check checks for possible check directories in the sources -- in mid-2008 there were about 20 examples on CRAN. o R CMD build tries harder to clean up the inst/doc directory from the remnants of earlier builds. It also removes any directories with extension .Rcheck, and files .DS_Store and ._* (created by tar on Mac OS X under some circumstances: it now sets environment variables to ask for such files not to be created by that tar.) + BUG FIXES
2008-08-31 14:37:27 +02:00
# and other failures due to not linking to support libs during testing
CONFIGURE_ENV+= ac_cv_lib_blas_dgemm=yes
CONFIGURE_ENV+= ac_cv_lib_blas_dgemm_=yes
Update to R 2.7.2 NEW FEATURES o sprintf() returns elements of the result in UTF-8 when the format or any character input has a corresponding element declared as UTF-8. Similarly for paste(), elements of the result are in UTF-8 when any input to that element is declared as UTF-8. o axis() has new arguments 'col.ticks' and 'lwd.ticks' to allow the colour and line width of ticks to be set separately from that of the line (e.g. to set one or the other to transparent or zero width). o legend() has a new argument 'box.col' to set the colour of the enclosing box. o legend() gains a 'xpd' argument to make it easier to place a legend in the margins or outer margins. o stripchart() now passes '...' to title() (as well as to plot.default() and axis()). (Wish of PR#12202) o help.search() has new argument 'searchEngine' to go directly to the search form: this is needed by users of Firefox 3 to workaround a bug in interpreting the search results pages. + BUG FIXES 2.7.1 NEW FEATURES o tools::texi2dvi() has a new argument 'texinputs' to allow the TeX and bibtex input paths to be specified (even on MiKTeX). o dev.copy2pdf() gains an 'out.type' argument to allow it to be used with cairo_pdf() or quartz(type = "pdf"). o poly() has additional checks against user error (as in PR#11243). o The Mac OS quartz() device draws contiguous lines much faster. o A field containing just a sign is no longer regarded as numeric (it was on all platforms in 2.7.0, but not on most in earlier versions of R). Similarly, '.' is now always non-numeric. o CITATION files are now read in Latin-1: quite a few were failing if used in a multibyte locale such as UTF-8. o The DESCRIPTION file of a package can specify an 'OS_type' field as either 'unix' or 'windows' to confine installation to that OS type. o HoltWinters() now uses optimize() rather than optim for one-parameter problems which should be more reliable (PR#11469). o axis() now respects the setting of par("xpd") when clipping. o The 'factor' method of format() now preserves names, dims and dimnames in the same way as for character and numeric inputs. (PR#11512) o read.DIF(*, transpose=TRUE) now allows to correctly read DIF files produced by some versions of Excel. DEPRECATED & DEFUNCT o The use of unserialize() on character strings is deprecated: that was a format used in R < 2.4.0. o The use of embedded nuls in character strings is deprecated: They will no longer be allowed in R 2.8.0. UTILITIES o R CMD check checks for possible check directories in the sources -- in mid-2008 there were about 20 examples on CRAN. o R CMD build tries harder to clean up the inst/doc directory from the remnants of earlier builds. It also removes any directories with extension .Rcheck, and files .DS_Store and ._* (created by tar on Mac OS X under some circumstances: it now sets environment variables to ask for such files not to be created by that tar.) + BUG FIXES
2008-08-31 14:37:27 +02:00
CONFIGURE_ENV+= r_cv_complete_blas=yes
# Broken test for bzlib >= 1.0.5 in R 2.7.0
CONFIGURE_ENV+= r_cv_have_bzlib=yes
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
CONFIGURE_ENV+= GETWD=${TOOLS_PWD_CMD}
CONFIGURE_ENV+= lt_cv_path_LD=${LD:Q}
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
CONFIGURE_ENV+= lt_cv_path_SED=${TOOLS_SED}
CONFIGURE_ENV+= ac_cv_path_R_GZIPCMD=${TOOLS_GZIP_CMD}
2007-09-08 15:44:48 +02:00
CONFIGURE_ENV+= ac_cv_path_R_UNZIPCMD=${TOOLS_PATH.unzip}
CONFIGURE_ENV+= r_cv_prog_f77_flag_mieee=no
# We don't want "lib64"
CONFIGURE_ENV+= LIBnn=lib
# Package assumes it can append to files (specifically DESCRIPTION) that have
# been installed SHAREMODE
SHAREMODE= 644
.include "../../mk/bsd.prefs.mk"
# R_PAPERSIZE can be: A4, Letter, Legal, Executive
.if defined(PAPERSIZE)
R_PAPERSIZE?= ${PAPERSIZE}
.else
R_PAPERSIZE?= A4
.endif
.if (${R_PAPERSIZE} == "Letterdj")
R_PAPERSIZE= Letter
.endif
CONFIGURE_ENV+= R_PAPERSIZE=${R_PAPERSIZE:Q}
# These macros are used during the build, so strip off the -o,-g flags.
INSTALL_DATA= ${INSTALL} ${COPY} -m ${SHAREMODE}
INSTALL_SCRIPT= ${INSTALL} ${COPY} -m ${BINMODE}
# to build NEWS.pdf
BUILD_DEPENDS+= tex-latex-bin-[0-9]*:../../print/tex-latex-bin
BUILD_DEPENDS+= tex-metafont-[0-9]*:../../fonts/tex-metafont
BUILD_DEPENDS+= tex-ae-[0-9]*:../../fonts/tex-ae
2011-12-11 22:10:05 +01:00
BUILD_DEPENDS+= tex-ec-[0-9]*:../../fonts/tex-ec
BUILD_DEPENDS+= tex-tools-[0-9]*:../../print/tex-tools
BUILD_DEPENDS+= tex-url-[0-9]*:../../print/tex-url
BUILD_DEPENDS+= tex-oberdiek-[0-9]*:../../print/tex-oberdiek
BUILD_DEPENDS+= tex-amsfonts-[0-9]*:../../fonts/tex-amsfonts
BUILD_DEPENDS+= tex-cm-[0-9]*:../../fonts/tex-cm
BUILD_DEPENDS+= tex-cm-super-[0-9]*:../../fonts/tex-cm-super
BUILD_DEPENDS+= tex-fontname-[0-9]*:../../fonts/tex-fontname
BUILD_DEPENDS+= tex-graphics-[0-9]*:../../print/tex-graphics
BUILD_DEPENDS+= tex-hyperref-[0-9]*:../../print/tex-hyperref
BUILD_DEPENDS+= tex-ifluatex-[0-9]*:../../print/tex-ifluatex
BUILD_DEPENDS+= tex-ifxetex-[0-9]*:../../print/tex-ifxetex
BUILD_DEPENDS+= tex-latex-[0-9]*:../../print/tex-latex
BUILD_DEPENDS+= tex-latexconfig-[0-9]*:../../print/tex-latexconfig
BUILD_DEPENDS+= tex-mptopdf-[0-9]*:../../graphics/tex-mptopdf
BUILD_DEPENDS+= tex-pdftex-def-[0-9]*:../../print/tex-pdftex
BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.3
BUILDLINK_API_DEPENDS.bzip2+= bzip2>=1.0.5
.if ${OPSYS} == "NetBSD" && !empty(OS_VERSION:M1.[0-6]*)
CONFIGURE_ARGS+= --enable-mbcs=no
.endif
.include "../../archivers/bzip2/buildlink3.mk"
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
.include "../../archivers/xz/buildlink3.mk"
2005-09-20 14:47:14 +02:00
.include "../../converters/libiconv/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.include "../../devel/pcre/buildlink3.mk"
# uses callback interface
.include "../../devel/readline/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
Changes 2.10.0: * Package help is now converted from Rd by the R-based converters that were first introduced in 2.9.0. * HTML help is now generated dynamically using an HTTP server running in the R process and listening on the loopback interface. * polygon(), pdf() and postscript() now have a parameter 'fillOddEven' (default FALSE), which controls the mode used for polygon fills of self-intersecting shapes. * New debugonce() function; further, getOption("deparse.max.lines") is now observed when debugging. * plot() methods for "stepfun" and hence "ecdf" no longer plot points by default for n >= 1000. * [g]sub(*, perl=TRUE) now also supports '\E' in order to *end* \U and \L case changes, thanks to a patch from Bill Dunlap. * factor(), `levels<-`(), etc, now ensure that the resulting factor levels are unique (as was always the implied intention). Factors with duplicated levels are still constructible by low-level means, but are now declared illegal. * New print() (S3) method for class "function", also used for auto-printing. Further, .Primitive functions now print and auto-print identically. * The print() and toLatex() methods for class "sessionInfo" now show the locale in a nicer format and have arguments to suppress locale information. * In addition to previously only round(), there are other 'Math' group (S3) methods for 'difftime', such as floor(), signif(), abs(), etc. * For completeness, old.packages() and available.packages() allow 'type' to be specified (you could always specify 'available' or 'contriburl'). * More...
2009-12-11 19:53:40 +01:00
.include "../../graphics/cairo/buildlink3.mk"
.include "../../mk/jpeg.buildlink3.mk"
.include "../../graphics/png/buildlink3.mk"
.include "../../graphics/tiff/buildlink3.mk"
.include "../../math/blas/buildlink3.mk"
2007-01-08 16:00:36 +01:00
.include "../../x11/libXt/buildlink3.mk"
.include "../../x11/tk/buildlink3.mk"
INSTALL_TEMPLATES+= ../../math/R/files/pkg-index.tmpl
DEINSTALL_TEMPLATES+= ../../math/R/files/pkg-index.tmpl
PRINT_PLIST_AWK+= /^lib\/R\/doc\/html\/packages.html$$/ { next; }
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"