[Rd] Change in grep functionality causes Rd_db to fail silently (PR#9846)

2007-08-13 Thread m . pacey
Full_Name: Mike Pacey
Version: 2.5.1
OS: SUSE SE Linux 9.3
Submission from: (NULL) (194.80.32.10)



Versions 2.5.0 and 2.5.1 currently fail "make check" on my system due to a
silent failure in the call to Rd_db("base"):

-
> ### Name: Rdutils
> ### Title: Rd Utilities
> ### Aliases: Rd_db Rd_parse
> ### Keywords: utilities documentation
> 
> ### ** Examples
> 
> ## Build the Rd db for the (installed) base package.
> db <- Rd_db("base")
> ## Run Rd_parse on all entries in the Rd db.
> db <- lapply(db, function(txt) Rd_parse(text = txt))
> ## Extract the metadata.
> meta <- lapply(db, "[[", "meta")
> 
> ## Keyword metadata per Rd file.
> keywords <- lapply(meta, "[[", "keywords")
> ## Tabulate the keyword entries.
> kw_table <- sort(table(unlist(keywords)))
Error in as.vector(x, mode) : invalid argument 'mode'
Execution halted


Tracing through the call to Rd_db, a call is made to list_files_with_exts(). The
functionality of the relevant section of that function in 2.4.0 is replicated
here:

> dir
[1] "/usr/local/packages/R-2.4.0-acml/lib64/R/library/base/man"
> files <- list.files(dir)
> files
[1] "base.Rd.gz"
> patt
[1] "\\.(Rd|rd|Rd.gz|rd.gz)$"
> grep(patt, files, value = TRUE)
[1] "base.Rd.gz"


In 2.5.1, the behaviour of grep() seems to have changed:

> dir
[1] "/usr/local/packages/src/R-2.5.1/library/base/man"
> files <- list.files(dir)
> files
[1] "base.Rd.gz"
> patt
[1] "\\.(Rd|rd|Rd.gz|rd.gz)$"
> grep(patt, files, value = TRUE)
character(0)

The result is that the call to Rd_db fails to find the relevant documentation
for the base package.

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


[Rd] Problem with configure's detection of glob on 2.6.0 (PR#10468)

2007-11-26 Thread m . pacey
Full_Name: Mike Pacey
Version: 2.6.0
OS: SuSe Linux 9.3 x86_64
Submission from: (NULL) (194.80.32.10)



A "vanilla" version of R configures and compiles without a problem on my system.
Switching to using the PGI compiler configures correctly (see the values at the
bottom fo thismessage), but compilation aborts with:

pgcc -I../../src/extra/zlib -I../../src/extra/bzip2 -I../../src/extra/pcre  -I.
-I../../src/include -I../../src/include -I/usr/local/include -DHAVE_CONFIG_H   
-Mvect=sse -Mscalarsse -Mcache_align -O2 -Kieee -c platform.c -o platform.o
PGC-S-0040-Illegal use of symbol, glob_t (platform.c: 1141)
PGC-W-0156-Type not specified, 'int' assumed (platform.c: 1141)
PGC-W-0095-Type cast required for this conversion (platform.c: 1168)
PGC/x86-64 Linux 7.0-2: compilation completed with severe errors
make[3]: *** [platform.o] Error 2


Running a diff on ./src/include/config.h files from both installs highlights a
difference in the #define settings. For the vanilla install I get:

/* Define to 1 if you have the `glob' function. */
#define HAVE_GLOB 1

/* Define to 1 if you have the  header file. */
#define HAVE_GLOB_H 1

For the PGI version of the install I get:

/* Define to 1 if you have the `glob' function. */
/* #undef HAVE_GLOB */

/* Define to 1 if you have the  header file. */
#define HAVE_GLOB_H 1

I was a little puzzled as to why the latter would have the glob header file but
not glob itself, so I modified the config.h file so that HAVE_GLOB was #defined
to 1. The result compiles and passes the "make check" tests.

Have I missed something or is configure/autoconf doing something odd with glob
detection?

-

Flags/variables for the PGI install are:
export CC=pgcc
export CFLAGS="-Mvect=sse -Mscalarsse -Mcache_align -O2 -Kieee"
export F77=pgf77
export FFLAGS="-Mvect=sse -Mscalarsse -Mcache_align -O2 -Kieee"
export CXX=pgCC
export CXXFLAGS="-Mvect=sse -Mscalarsse -Mcache_align -O2 -Kieee"
export FC=pgf95
export FCFLAGS="-Mvect=sse -Mscalarsse -Mcache_align -O2 -Kieee"
export SHLIB_CXXLDFLAGS=-shared
export SHLIB_LDFLAGS=-shared
./configure --prefix=/usr/local/packages/R-2.6.0-acml \
--with-blas="-lacml" --x-includes=/usr/X11R6/include
--x-libraries=/usr/X11R6/lib64

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel