Skip to content

Commit ee2e102

Browse files
authored
Merge pull request #1037 from RcppCore/feature/win_debug_dll
Feature/win debug dll (closes #1035)
2 parents 43a6d84 + 9da65da commit ee2e102

File tree

6 files changed

+46
-8
lines changed

6 files changed

+46
-8
lines changed

ChangeLog

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
1+
2019-12-17 Dirk Eddelbuettel <[email protected]>
2+
3+
* R/Attributes.R (sourceCpp): Very minor cosmetic changes
4+
5+
2019-12-15 Dirk Eddelbuettel <[email protected]>
6+
7+
* DESCRIPTION (Version, Date): Roll minor version
8+
* inst/include/Rcpp/config.h: Idem
9+
110
2019-12-14 Dirk Eddelbuettel <[email protected]>
211

12+
* R/Attributes.R (sourceCpp): Support new argument windowsDebugDLL to
13+
create a debug DLL, supported on Windows only
14+
* man/sourceCpp.Rd: Document it
15+
316
* src/date.cpp: A few more #nocov tage
417

518
2019-12-13 Dirk Eddelbuettel <[email protected]>

DESCRIPTION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Package: Rcpp
22
Title: Seamless R and C++ Integration
3-
Version: 1.0.3.4
4-
Date: 2019-12-07
3+
Version: 1.0.3.5
4+
Date: 2019-12-14
55
Author: Dirk Eddelbuettel, Romain Francois, JJ Allaire, Kevin Ushey, Qiang Kou,
66
Nathan Russell, Douglas Bates and John Chambers
77
Maintainer: Dirk Eddelbuettel <[email protected]>

R/Attributes.R

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
# Copyright (C) 2012 - 2018 JJ Allaire, Dirk Eddelbuettel and Romain Francois
2+
# Copyright (C) 2012 - 2019 JJ Allaire, Dirk Eddelbuettel and Romain Francois
33
#
44
# This file is part of Rcpp.
55
#
@@ -27,7 +27,8 @@ sourceCpp <- function(file = "",
2727
cleanupCacheDir = FALSE,
2828
showOutput = verbose,
2929
verbose = getOption("verbose"),
30-
dryRun = FALSE) {
30+
dryRun = FALSE,
31+
windowsDebugDLL = FALSE) {
3132

3233
# use an architecture/version specific subdirectory of the cacheDir
3334
# (since cached dynlibs can now perist across sessions we need to be
@@ -62,7 +63,15 @@ sourceCpp <- function(file = "",
6263
if (grepl(' ', basename(file), fixed=TRUE)) {
6364
stop("The filename '", basename(file), "' contains spaces. This ",
6465
"is not permitted.")
65-
} # #nocov end
66+
}
67+
} else {
68+
if (windowsDebugDLL) {
69+
if (verbose) {
70+
message("The 'windowsDebugDLL' toggle is ignored on ",
71+
"non-Windows platforms.")
72+
}
73+
windowsDebugDLL <- FALSE # now we do not need to deal with OS choice below
74+
} # #nocov end
6675
}
6776

6877
# get the context (does code generation as necessary)
@@ -121,6 +130,7 @@ sourceCpp <- function(file = "",
121130
# prepare the command (output if we are in showOutput mode)
122131
cmd <- paste(R.home(component="bin"), .Platform$file.sep, "R ",
123132
"CMD SHLIB ",
133+
ifelse(windowsDebugDLL, "-d ", ""),
124134
"-o ", shQuote(context$dynlibFilename), " ",
125135
ifelse(rebuild, "--preclean ", ""),
126136
ifelse(dryRun, "--dry-run ", ""),

inst/NEWS.Rd

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
\itemize{
1010
\item Safer \code{Rcpp_list*}, \code{Rcpp_lang*} and
1111
\code{Function.operator()} (Romain in \ghpr{1014}, \ghit{1015}).
12+
\item A number of \code{#nocov} markers were added (Dirk in
13+
\ghprP1036}).
1214
}
1315
\item Changes in Rcpp Attributes:
1416
\itemize{
@@ -17,18 +19,27 @@
1719
\ghit{1017}).
1820
\item Invisible return object are now supported via new option (Kun Ren
1921
in \ghpr{1025} fixing \ghit{1024}).
22+
\item Unavailable packages referred to in \code{LinkingTo} are now
23+
reported (Dirk in \ghpr{1027} fixing \ghit{1026}).
24+
\item The \code{sourceCpp} function can now create a debug DLL on
25+
Windows (Dirk in \ghpr{1037} fixing \ghit{ghit}).
2026
}
2127
\item Changes in Rcpp Documentation:
2228
\itemize{
2329
\item The \code{.github/} directory now has more explicit guidance on
2430
contributinh, issues, and pull requests (Dirk).
2531
\item The Rcpp Attributes vignette describe the new invisible return
2632
objection option (Kun Ren in \ghpr{1025}).
33+
\item Vignettes are now included as pre-made pdf files (Dirk in \ghpr{1029})
34+
\item The Rcpp FAQ has new entry on the recommended
35+
\code{importFrom} directive (Dirk in \ghpr{1031} fixing \ghit{1030}).
2736
}
2837
\item Changes in Rcpp Deployment:
2938
\itemize{
3039
\item Added unit test to check if C++ version remains remains aligned
3140
with the package number (Dirk in \ghpr{1022} fixing \ghit{1021}).
41+
\item The unit test system was switched to tinytest (Dirk in
42+
\ghpr{1028}, \ghpr{1032}, \ghpr{1033}).
3243
}
3344
}
3445
}

inst/include/Rcpp/config.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#define RCPP_VERSION_STRING "1.0.3"
3131

3232
// the current source snapshot
33-
#define RCPP_DEV_VERSION RcppDevVersion(1,0,3,4)
34-
#define RCPP_DEV_VERSION_STRING "1.0.3.4"
33+
#define RCPP_DEV_VERSION RcppDevVersion(1,0,3,5)
34+
#define RCPP_DEV_VERSION_STRING "1.0.3.5"
3535

3636
#endif

man/sourceCpp.Rd

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ and RCPP_MODULE declarations. A shared library is then built and its exported fu
1010
\usage{
1111
sourceCpp(file = "", code = NULL, env = globalenv(), embeddedR = TRUE, rebuild = FALSE,
1212
cacheDir = getOption("rcpp.cache.dir", tempdir()), cleanupCacheDir = FALSE,
13-
showOutput = verbose, verbose = getOption("verbose"), dryRun = FALSE)
13+
showOutput = verbose, verbose = getOption("verbose"), dryRun = FALSE,
14+
windowsDebugDLL = FALSE)
1415
}
1516
\arguments{
1617
\item{file}{
@@ -43,6 +44,9 @@ sourceCpp(file = "", code = NULL, env = globalenv(), embeddedR = TRUE, rebuild =
4344
\item{dryRun}{
4445
\code{TRUE} to do a dry run (showing commands that would be used rather than
4546
actually executing the commands).
47+
}
48+
\item{windowsDebugDLL}{
49+
\code{TRUE} to create a debug DLL on Windows (and ignored on other platforms).
4650
}
4751
}
4852
\details{

0 commit comments

Comments
 (0)