]> git.donarmstrong.com Git - cran2deb.git/commitdiff
bulk build modifications: regexp tweaks, license/sysreq override additions, drop...
authorblundellc <blundellc@edb9625f-4e0d-4859-8d74-9fd3b1da38cb>
Sat, 13 Sep 2008 13:21:18 +0000 (13:21 +0000)
committerblundellc <blundellc@edb9625f-4e0d-4859-8d74-9fd3b1da38cb>
Sat, 13 Sep 2008 13:21:18 +0000 (13:21 +0000)
bioconductor packages appear to be much worse at using undeclared
systemrequirements (or maybe have a different base set they assume) so
drop for now.

current success rate is around 90% to 96%. most failures still due to
poorly formed License: fields (!) followed by undeclared system
requirements.

git-svn-id: svn://svn.r-forge.r-project.org/svnroot/cran2deb@82 edb9625f-4e0d-4859-8d74-9fd3b1da38cb

pkg/trunk/R/db.R
pkg/trunk/R/debcontrol.R
pkg/trunk/data/populate_licenses
pkg/trunk/data/populate_sysreq
pkg/trunk/exec/build
pkg/trunk/exec/build_some
pkg/trunk/exec/diagnose
pkg/trunk/exec/update_cache

index 81b7b59f1ef76448fba9e355bd535ba960c5f9ba..db35927f8bb4f98295c1a87ad1ec6cf645ce6e64 100644 (file)
@@ -29,7 +29,7 @@ db_stop <- function(con) {
 }
 
 db_quote <- function(text) {
-    return(paste('"',gsub('([^][[:alnum:]*?. ()<>:/=+-])','\\\\\\1',text),'"',sep=''))
+    return(paste('"',gsub('([^][[:alnum:]*?. ()<>:/=+%-])','\\\\\\1',text),'"',sep=''))
 }
 
 db_sysreq_override <- function(sysreq_text) {
@@ -37,7 +37,7 @@ db_sysreq_override <- function(sysreq_text) {
     con <- db_start()
     results <- dbGetQuery(con,paste(
                     'SELECT DISTINCT debian_name FROM sysreq_override WHERE'
-                            ,db_quote(sysreq_text),'GLOB r_pattern'))
+                            ,db_quote(sysreq_text),'LIKE r_pattern'))
     db_stop(con)
     if (length(results) == 0) {
         return(NA)
index f6c14f9dcf8d8483f8960b1baf3833e2236664d2..50bf742dc03139e210a096011cd4d8fc618bdcf0 100644 (file)
@@ -50,6 +50,7 @@ sysreqs_as_debian <- function(sysreq_text) {
     # form of this field is unspecified (ugh) but most people seem to stick
     # with this
     debs <- c()
+    sysreq_text <- gsub('[[:space:]]and[[:space:]]',' , ',tolower(sysreq_text))
     for (sysreq in strsplit(sysreq_text,'[[:space:]]*,[[:space:]]*')[[1]]) {
         startreq = sysreq
         # constant case
index 8a941fcf47d5776fb6e64a1e0157871834f158e9..37735a52159e0162d3a0368c0d1bf7f31bd7bc36 100644 (file)
@@ -38,10 +38,13 @@ pkg distrib-noncomm PTAk
 pkg distrib-noncomm siggenes
 pkg GPL+ACM akima
 pkg GPL+ACM tripack
+pkg GPL degreenet
 pkg GPL ergm
 pkg GPL gmodels
 pkg GPL ICE
+pkg GPL latentnet
 pkg GPL network
+pkg GPL networksis
 pkg GPL pastecs
 pkg GPL pbatR
 pkg GPL PKtools
@@ -50,6 +53,7 @@ pkg GPL reldist
 pkg GPL RXshrink
 pkg GPL snpMatrix
 pkg GPL splancs
+pkg GPL statnet
 pkg GPL uroot
 pkg LGPL R.huge
 pkg MCLUST mclust
index 180b08d5208f488bc2e99fb931043ffcc4e1169b..f39478a6b037198859ce63cfe397085135b8b536 100644 (file)
@@ -1,5 +1,7 @@
 add build-essential gcc
 add build-essential gnu make
+add build-essential none
+add build-essential % if present
 add libquantlib0-dev quantlib%
 add pari-gp pari/gp
 add libcairo2-dev cairo
@@ -16,10 +18,15 @@ add libpng12-dev libpng
 add libfreetype6-dev freetype
 add libgsl0-dev gnu scientific library
 add libgmp3-dev gmp
-add libgdal1-dev gdal
-add proj proj.4
+add libgdal1-dev %gdal%
+add proj proj%
 add libgraphviz-dev graphviz
-add imagemagick imagemagick
-add curl curl
+add libmagick9-dev imagemagick
+add curl libcurl4-openssl-dev
 add libxml2-dev libxml%
 add libfreetype6-dev %freetype
+add ggobi ggobi
+add libjpeg62-dev libjpeg%
+add libdieharder-dev dieheader%
+add msttcorefonts msttcorefonts
+add libfontconfig1-dev fontconfig
index d3d40a4ad00af2d955123f2ae991989aa586ddeb..92e1e40cc2dbab20ed004df8d0668a291f2c1da6 100755 (executable)
@@ -6,20 +6,21 @@ go <- function(name,extra_deps) {
     pkg <- try((function() {
         # see if it has already been built
         srcname <- pkgname_as_debian(name,binary=F)
+        debname <- pkgname_as_debian(name,binary=T)
         version <- version_new(available[name,'Version'])
         if (file.exists(changesfile(srcname, version))) {
             message(paste('N: already built',srcname,'version',version))
-            return(pkg)
+            return(NA)
         }
-        rm(srcname,version)
-
-        pkg <- prepare_new_debian(prepare_pkg(dir,name),extra_deps)
         # XXX: what about building newer versions?
-        if (pkg$debname %in% debian_pkgs) {
-            message(paste('N:',pkg$srcname,' exists in Debian (perhaps a different version)'))
-            return(pkg)
+        if (debname %in% debian_pkgs) {
+            message(paste('N:',srcname,' exists in Debian (perhaps a different version)'))
+            return(NA)
         }
 
+        rm(debname,srcname,version)
+
+        pkg <- prepare_new_debian(prepare_pkg(dir,name),extra_deps)
         # delete the current archive (XXX: assumes mini-dinstall)
         for (subdir in c('mini-dinstall','unstable')) {
             path = file.path(dinstall_archive,subdir)
index 6adee62df6651d7fe4ad84072647b48955349382..5f56c432f84145c5e1806f71937016d10f9d4e8e 100755 (executable)
@@ -8,16 +8,23 @@ if ([ ! -e all_pkgs ]) {
 for (pkg in `{cat all_pkgs}) {
     if (~ $pkg *..* */*) {
         echo bad name $pkg >>fail/ERROR
+    } else if ([ -e warn/$pkg ]) {
+        echo skipping $pkg...
+    } else if ([ -e fail/$pkg ]) {
+        echo skipping failed $pkg...
     } else {
-        echo .. package $pkg
+        echo -n .. package $pkg
         fail=0
         cran2deb build $pkg >fail/$pkg >[2=1] || fail=1
         if (~ $fail 0) {
+            echo success
             grep '^[WE]:' fail/$pkg >warn/$pkg
-            if (~ `{stat -c '%s' warn/$pkg} 0) {
-                rm -f warn/$pkg
-            }
+#            if (~ `{stat -c '%s' warn/$pkg} 0) {
+#                rm -f warn/$pkg
+#            }
             rm -f fail/$pkg
+        } else {
+            echo FAILED
         }
     }
 }
index 091da01274daae03be58b19de70128cb2d9c1da7..3740b50eac14c7a42ec9f8fc8c6d3a8eac68fe07 100755 (executable)
@@ -64,8 +64,9 @@ echo $nfailother other failures.
 total=`{hoc -e $total}
 succrate=`{hoc -e $success/'('$total')*100'}
 echo $succrate% success rate '('$total' total)'
-total=`{hoc -e $total-$nfaillic-$nfailspc-$nfailhdr}
+#total=`{hoc -e $total-$nfaillic-$nfailspc-$nfailhdr}
+total=`{hoc -e $total-$nfaillic-$nfailspc}
 succrate=`{hoc -e $success/'('$total')*100'}
-echo $succrate% success rate without licensing, space and Debian deps issues '('$total' total)'
+echo $succrate% success rate with exclusions '('$total' total)'
 grep -EL $other fail/* /dev/null | xargs tail -n 20
 
index 60c63c0530870902e1fc892005ae4b7dbb9d330f..b7e7429da19579f43bbbb43753528ab6908b39a5 100755 (executable)
@@ -10,7 +10,7 @@ mirror <- 'http://cran.r-project.org/'
 
 message('updating list of available R packages...')
 available <- available.packages(contrib.url(mirror))
-available <- rbind(available,available.packages(contrib.url('http://www.bioconductor.org/')))
+#available <- rbind(available,available.packages(contrib.url('http://www.bioconductor.org/')))
 
 message('updating list of available R task views...')
 ctv.available <- available.views(repo=mirror)