@@ -516,14 +516,6 @@ env_vars_as_string <- function(env_var_list) {
516516 env_var_string
517517}
518518
519- strip_make_job_flags <- function (makeflags ) {
520- makeflags <- gsub(" (^|\\ s)--jobserver-[^[:space:]]+" , " " , makeflags , perl = TRUE )
521- makeflags <- gsub(" (^|\\ s)--jobs(=|\\ s+)?[0-9]*(?=\\ s|$)" , " " , makeflags , perl = TRUE )
522- makeflags <- gsub(" (^|\\ s)-j\\ s*[0-9]*(?=\\ s|$)" , " " , makeflags , perl = TRUE )
523- makeflags <- gsub(" (^|\\ s)([[:alpha:]]*)j[0-9]*([[:alpha:]]*)(?=\\ s|$)" , " \\ 1\\ 2\\ 3" , makeflags , perl = TRUE )
524- trimws(gsub(" \\ s+" , " " , makeflags , perl = TRUE ))
525- }
526-
527519R_CMD_config <- function (var ) {
528520 tools :: Rcmd(paste(" config" , var ), stdout = TRUE )
529521}
@@ -543,33 +535,12 @@ build_libarrow <- function(src_dir, dst_dir) {
543535 makeflags <- sprintf(" -j%s" , ncores )
544536 Sys.setenv(MAKEFLAGS = makeflags )
545537 } else {
546- # Extract -j/--jobs value from existing MAKEFLAGS if present
547- j_match <- regmatches(
548- makeflags ,
549- regexpr(" (^|\\ s)(-j\\ s*|--jobs(=|\\ s)+|[[:alpha:]]*j)([0-9]+)(?=\\ s|$)" , makeflags , perl = TRUE )
550- )
538+ # Extract -j value from existing MAKEFLAGS if present
539+ j_match <- regmatches(makeflags , regexpr(" -j\\ s*([0-9]+)" , makeflags , perl = TRUE ))
551540 if (length(j_match ) > 0 ) {
552- ncores <- as.integer(sub(" .*?([0-9]+)$ " , " \\ 1 " , j_match , perl = TRUE ))
541+ ncores <- as.integer(sub(" -j \\ s* " , " " , j_match , perl = TRUE ))
553542 }
554- # Keep GNU make's optional -j/--jobs argument in one token for nested gmake
555- makeflags <- gsub(" (^|\\ s)-j\\ s+([0-9]+)(?=\\ s|$)" , " \\ 1-j\\ 2" , makeflags , perl = TRUE )
556- makeflags <- gsub(" (^|\\ s)--jobs\\ s+([0-9]+)(?=\\ s|$)" , " \\ 1--jobs=\\ 2" , makeflags , perl = TRUE )
557- # Give any remaining bare `-j`/`--jobs` an explicit count
558- makeflags <- gsub(" (^|\\ s)-j(?=\\ s|$)" , sprintf(" \\ 1-j%s" , ncores ), makeflags , perl = TRUE )
559- makeflags <- gsub(" (^|\\ s)--jobs(?=\\ s|$)" , sprintf(" \\ 1--jobs=%s" , ncores ), makeflags , perl = TRUE )
560- Sys.setenv(MAKEFLAGS = makeflags )
561- }
562- gnumakeflags <- Sys.getenv(" GNUMAKEFLAGS" )
563- if (nzchar(gnumakeflags )) {
564- gnumakeflags <- gsub(" (^|\\ s)-j\\ s+([0-9]+)(?=\\ s|$)" , " \\ 1-j\\ 2" , gnumakeflags , perl = TRUE )
565- gnumakeflags <- gsub(" (^|\\ s)--jobs\\ s+([0-9]+)(?=\\ s|$)" , " \\ 1--jobs=\\ 2" , gnumakeflags , perl = TRUE )
566- gnumakeflags <- gsub(" (^|\\ s)-j(?=\\ s|$)" , sprintf(" \\ 1-j%s" , ncores ), gnumakeflags , perl = TRUE )
567- gnumakeflags <- gsub(" (^|\\ s)--jobs(?=\\ s|$)" , sprintf(" \\ 1--jobs=%s" , ncores ), gnumakeflags , perl = TRUE )
568- Sys.setenv(GNUMAKEFLAGS = gnumakeflags )
569543 }
570- makeflags <- strip_make_job_flags(makeflags )
571- gnumakeflags <- strip_make_job_flags(Sys.getenv(" GNUMAKEFLAGS" ))
572- Sys.setenv(MAKEFLAGS = makeflags , GNUMAKEFLAGS = gnumakeflags )
573544 if (! quietly ) {
574545 lg(" Building with MAKEFLAGS=%s" , makeflags )
575546 }
@@ -608,8 +579,6 @@ build_libarrow <- function(src_dir, dst_dir) {
608579 ),
609580 # CXXFLAGS = R_CMD_config("CXX20FLAGS"), # We don't want the same debug symbols
610581 LDFLAGS = R_CMD_config(" LDFLAGS" ),
611- MAKEFLAGS = makeflags ,
612- GNUMAKEFLAGS = gnumakeflags ,
613582 N_JOBS = ncores
614583 )
615584
0 commit comments