From 01d5d539cb2ccb4840ee1f2d88beeb0381740e72 Mon Sep 17 00:00:00 2001 From: blundellc Date: Sun, 11 Apr 2010 18:05:55 +0000 Subject: [PATCH] add option to not cleanup (debug) packages to build. update aliases/hashes from db. git-svn-id: svn://svn.r-forge.r-project.org/svnroot/cran2deb@301 edb9625f-4e0d-4859-8d74-9fd3b1da38cb --- trunk/R/build.R | 8 ++++-- trunk/R/log.R | 1 + trunk/data/populate_depend_aliases | 12 +++++++-- trunk/data/populate_forcedep | 16 +++++++++++- trunk/data/populate_license_hashes | 41 +++++++++++++++++++++++++++--- trunk/data/populate_sysreq | 15 +++++++++++ trunk/exec/build | 13 +++++++--- trunk/exec/update | 1 + 8 files changed, 94 insertions(+), 13 deletions(-) diff --git a/trunk/R/build.R b/trunk/R/build.R index 3855a27..540610f 100644 --- a/trunk/R/build.R +++ b/trunk/R/build.R @@ -1,5 +1,5 @@ -build <- function(name,extra_deps,force=F) { +build <- function(name,extra_deps,force=F,do_cleanup=T) { # can't, and hence don't need to, build base packages if (name %in% base_pkgs) { return(T) @@ -58,7 +58,11 @@ build <- function(name,extra_deps,force=F) { } return(pkg$debversion) })()) - cleanup(dir) + if (do_cleanup) { + cleanup(dir) + } else { + notice('output is in',dir,'. you must clean this up yourself.') + } if (is.null(result)) { # nothing was done so escape asap. return(result) diff --git a/trunk/R/log.R b/trunk/R/log.R index 2a9be4e..3d74bae 100644 --- a/trunk/R/log.R +++ b/trunk/R/log.R @@ -54,6 +54,7 @@ log_system <- function(...) { if (inherits(r,'try-error')) { fail('system failed on:',paste(...)) } + log_add(paste('C:',...)) for (line in r[[2]]) { if (!length(grep('^[WENI]:',line))) { line = paste('I:',line) diff --git a/trunk/data/populate_depend_aliases b/trunk/data/populate_depend_aliases index de68484..efdd16f 100644 --- a/trunk/data/populate_depend_aliases +++ b/trunk/data/populate_depend_aliases @@ -56,7 +56,7 @@ alias_run pari-gp pari-gp alias_build proj proj alias_run proj proj alias_build quantlib libquantlib0-dev -alias_run quantlib libquantlib-0.9.7 +alias_run quantlib libquantlib-0.9.9 alias_run sqlite libsqlite3-0 alias_build sqlite libsqlite3-dev alias_build zlib zlib1g-dev @@ -67,7 +67,7 @@ alias_build autotools autotools-dev alias_build tcl tcl8.5-dev alias_build tk tk8.5-dev alias_build odbc unixodbc-dev -alias_build mysql libmysqlclient15-dev +alias_build mysql libmysqlclient-dev alias_build mpi libopenmpi-dev alias_build pvm pvm-dev alias_build hdf5 libhdf5-serial-dev @@ -123,3 +123,11 @@ alias_build pkg-config pkg-config alias_run pkg-config pkg-config alias_build rgtk2 r-cran-rgtk2 alias_run rgtk2 r-cran-rgtk2 +alias_build libitpp libitpp-dev +alias_build libxerces-c libxerces-c-dev +alias_build protobuf-compiler protobuf-compiler +alias_build libprotobuf-dev libprotobuf-dev +alias_build libprotoc-dev libprotoc-dev +alias_build postgresql_java libpg-java +alias_run postgresql_java libpg-java +alias_build armadillo libarmadillo-dev diff --git a/trunk/data/populate_forcedep b/trunk/data/populate_forcedep index 2940480..94467e9 100644 --- a/trunk/data/populate_forcedep +++ b/trunk/data/populate_forcedep @@ -20,7 +20,6 @@ force boost RBGL force netcdf RNetCDF force libtiff biOps force fftw-dev rimage -force r-recommended spBayes force libxt Cairo force autotools qp force boost MBA @@ -50,3 +49,18 @@ force colorspace DoE.base force pkg-config mvgraph force glade RGtk2 force rgtk2 rattle +force libitpp psgp +force java farmR +force gsl mvabund +force colorspace nnDiag +force autotools fftw +force protobuf-compiler RProtoBuf +force libprotobuf-dev RProtoBuf +force libprotoc-dev RProtoBuf +force pkg-config RProtoBuf +force colorspace simPopulation +force java RpgSQL +force netcdf ncdf4 +force colorspace vcdExtra +force boost RcppArmadillo +force pkg-config fftw diff --git a/trunk/data/populate_license_hashes b/trunk/data/populate_license_hashes index d13d08d..005e2b9 100644 --- a/trunk/data/populate_license_hashes +++ b/trunk/data/populate_license_hashes @@ -13,14 +13,11 @@ accept x11 accept distrib-noncomm accept gpl+acm accept unclear -accept acepack -accept ff accept nistnls accept rtiff accept mvpart accept mmcm accept grade -accept eupl accept agpl accept scagnostics accept akima @@ -33,6 +30,20 @@ accept acm accept camassclass accept rwt accept tcltk2 +accept agpl-3 +accept gpl-2-qa +accept ff_license +accept rindex_license +accept eupl +accept statnet +accept degreenet +accept geometry +accept ergm +accept acepack +accept ff +accept mspath +accept ever +accept latentnet hash_sha1 apache 2b8b815229aa8a61e483fb4ba0588b8b6c491890 hash_sha1 artistic be0627fff2e8aef3d2a14d5d7486babc8a4873ba hash_sha1 bsd 095d1f504f6fd8add73a4e4964e37f260f332b6a @@ -85,7 +96,6 @@ hash_sha1 agpl 86d2ea18c092d87328f06d22d997af59cee10fc4 hash_sha1 gpl d093976b85026cb225a12908088bb19dd9d480b7 hash_sha1 gpl 0e9f026efef26009619f9048637eb2a498379c88 hash_sha1 acepack 6bdcfb412d82fe3ad5b64650d900c2845d08fbc6 -hash_sha1 ff 0ce6a854127045f0b2efc9be8bacebb3da42a855 hash_sha1 agpl d3c31418974fd4d69032bc1f5c58e13c1634ca40 hash_sha1 agpl 6bdfdd431d081dd0bacf493ba3563f3480ab8936 hash_sha1 nistnls 735b08919865788221c3139506b4f508e6636dfa @@ -118,3 +128,26 @@ hash_sha1 unclear befc3a63448173d57ad7304319ceaf01302ba035 hash_sha1 tcltk2 e7d59565ab5ec7245fbfea74384798e5f6a9f483 hash_sha1 tcltk2 7ddf1b18f9624b0a6ded40c70be329cadd074af8 hash_sha1 gpl 6866382245b1802189e6e8b956196ce4715fc67f +hash_sha1 agpl-3 70ae9c1442b696a7b3ded90579785030ff7bdbb4 +hash_sha1 agpl-3 a596e7f3a3125045173253bddfc8e4b3cba09004 +hash_sha1 rindex_license fa72fc5a881001769d691af7ab529699c08edda0 +hash_sha1 eupl 4418cb312744f1b1a76420cf3ed43dded454e1a2 +hash_sha1 eupl 4b4f67314d4b0cbdcf18e8c765374bfc49c699d1 +hash_sha1 statnet 73d704179dcbe75498f174941036db921e4aab98 +hash_sha1 statnet d6cfab1f34efdeb09ff17948ef37eb82bb151d71 +hash_sha1 degreenet bcfb8b637a823520e18cd00570ab67ac34355e9b +hash_sha1 degreenet c1a8f1e9fda548a222131a42db976a9b841a8b84 +hash_sha1 geometry 4265480ee7ad0ef41f684d20c8204356e12c525c +hash_sha1 geometry c52bef65629df25bcd18e97236f5405e7c408097 +hash_sha1 ergm 2f7fb32f8c752f73fd9f32e92af697c8395ad3ae +hash_sha1 ergm e36db453758cb8173f7cd80561feaea796f767ce +hash_sha1 acepack 698e04a130a50d9e0b990f4bd2569fa54366102a +hash_sha1 acepack 44801e90a3c00a7fe4f5a6bff8c9eaf743d717f4 +hash_sha1 ff 220e79fccd4f8e4874b8c8c481fe7ff9b8e3c850 +hash_sha1 ff 1e0f7f00f430604860afdb5fe911be5db07d5913 +hash_sha1 mspath 58c267c9ae997b5814c5fcaaf6233783f937a2c3 +hash_sha1 mspath 0a4121a7735852e842112b0dd667160f99df39d4 +hash_sha1 ever a3ab3a534d3514d56ae1ea76414e51543af5bef8 +hash_sha1 ever 8b25578cf5d509b042115c54824e8423d95f4061 +hash_sha1 latentnet a67ae6964aa0ede190721cfd17c2509b7799e881 +hash_sha1 latentnet d72813ddddb94f752d9929bdbe622179a623986b diff --git a/trunk/data/populate_sysreq b/trunk/data/populate_sysreq index 8a7f257..852a617 100644 --- a/trunk/data/populate_sysreq +++ b/trunk/data/populate_sysreq @@ -85,3 +85,18 @@ sysreq ignore http://mpfr.org/% sysreq gmp gmp (gnu multiple precision library sysreq ignore see readme sysreq tk-img img +sysreq ignore activetcl +sysreq libitpp libitpp +sysreq libxerces-c libxerces-c +sysreq ignore java runtime +sysreq protobuf protocol buffer compiler (to create c++ header +sysreq ignore Protocol Buffer compiler (% +sysreq ignore source files .proto % +sysreq ignore library (version 2.2.0 or later) +sysreq ignore library +sysreq libpng libpng% +sysreq postgresql postgresql +sysreq postgresql_java postgresql jdbc driver +sysreq ignore gmt +sysreq armadillo armadillo +sysreq java jri diff --git a/trunk/exec/build b/trunk/exec/build index 4744987..6feaf5d 100755 --- a/trunk/exec/build +++ b/trunk/exec/build @@ -1,6 +1,7 @@ #!/usr/bin/env r -## DOC: cran2deb build [-D extra_dep1,extra_dep2,...] package1 package2 ... +## DOC: cran2deb build [-d] [-D extra_dep1,extra_dep2,...] package1 package2 ... ## DOC: builds a particular package. +## DOC: -d leave the staging directory around for debugging. ## DOC: suppressPackageStartupMessages(library(cran2deb)) @@ -9,7 +10,8 @@ if (exists('argv')) { # check for littler extra_deps = list() extra_deps$deb = c() extra_deps$r = c() - opts = c('-D','-R') + do_cleanup = T + opts = c('-D','-R','-d') # first argument is the root --- this is dealt with elsewhere. for (i in 2:argc) { if (!(argv[i] %in% opts)) { @@ -31,13 +33,16 @@ if (exists('argv')) { # check for littler extra_deps$r = c(extra_deps$r,strsplit(chomp(argv[i+1]),',')[[1]]) extra_deps$deb = c(extra_deps$deb,lapply(extra_deps$r,pkgname_as_debian)) } + if (argv[i] == '-d') { #debug + do_cleanup = F + } } if (argc == 0) { - err('usage: cran2deb build [-D extra_dep1,extra_dep2,...] package package ...') + err('usage: cran2deb build [-d] [-D extra_dep1,extra_dep2,...] package package ...') } build_order <- r_dependency_closure(c(extra_deps$r,argv)) notice('build order',paste(build_order,collapse=', ')) for (pkg in build_order) { - build(pkg,extra_deps,force=pkg %in% argv) + build(pkg,extra_deps,force=pkg %in% argv, do_cleanup) } } diff --git a/trunk/exec/update b/trunk/exec/update index 53bc927..b457c91 100755 --- a/trunk/exec/update +++ b/trunk/exec/update @@ -23,6 +23,7 @@ if (![ -e /var/cache/cran2deb/cache.rda ] || [ $delta -gt $update_period ]) { if ([ -e /var/cache/pbuilder/base-cran2deb-$sys.tgz ]) { mode=update } + echo C: sudo pbuilder $mode --override-config --configfile /etc/cran2deb/sys/$sys/pbuilderrc sudo pbuilder $mode --override-config --configfile /etc/cran2deb/sys/$sys/pbuilderrc $root/exec/update_cache $root } -- 2.39.2