aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenda Xu <heroxbd@gentoo.org>2018-05-30 13:25:20 +0800
committerBenda Xu <heroxbd@gentoo.org>2018-05-30 13:25:20 +0800
commit3f7c507a97b62ef814517adf3e9fae935db4ad04 (patch)
treef7c75a48ba82805ea0e18a576d3b935f21fb90a3
parentconst.py: do not split on ',' inside a pair of '()'. (diff)
downloadR_overlay-3f7c507a97b62ef814517adf3e9fae935db4ad04.tar.gz
R_overlay-3f7c507a97b62ef814517adf3e9fae935db4ad04.tar.bz2
R_overlay-3f7c507a97b62ef814517adf3e9fae935db4ad04.zip
Use regex in dep string matches.
Ignore rules should come later than positive rules. Closes: https://bugs.gentoo.org/653694
-rw-r--r--config/simple-deprules.d/R66
-rw-r--r--config/simple-deprules.d/app7
-rw-r--r--config/simple-deprules.d/app-text29
-rw-r--r--config/simple-deprules.d/compound_deps25
-rw-r--r--config/simple-deprules.d/dev58
-rw-r--r--config/simple-deprules.d/dev-libs73
-rw-r--r--config/simple-deprules.d/dot_remap134
-rw-r--r--config/simple-deprules.d/ignored_text103
-rw-r--r--config/simple-deprules.d/media20
-rw-r--r--config/simple-deprules.d/media-libs30
-rw-r--r--config/simple-deprules.d/misc6
-rw-r--r--config/simple-deprules.d/net21
-rw-r--r--config/simple-deprules.d/nvidia22
-rw-r--r--config/simple-deprules.d/sci34
-rw-r--r--config/simple-deprules.d/sci-libs35
-rw-r--r--config/simple-deprules.d/selfdeps22
-rw-r--r--config/simple-deprules.d/selfdeps.d/sci-CRAN23
-rw-r--r--config/simple-deprules.d/sys32
-rw-r--r--config/simple-deprules.d/system.set39
-rw-r--r--config/simple-deprules.d/unknown5
-rw-r--r--config/simple-deprules.d/x1112
-rw-r--r--roverlay/depres/simpledeprule/abstractrules.py10
-rw-r--r--roverlay/depres/simpledeprule/rules.py6
23 files changed, 195 insertions, 617 deletions
diff --git a/config/simple-deprules.d/R b/config/simple-deprules.d/R
index 9106deb..8edf111 100644
--- a/config/simple-deprules.d/R
+++ b/config/simple-deprules.d/R
@@ -6,53 +6,43 @@
#deptype all
# using fuzzy dep matches
-~dev-lang/R :: R
+~dev-lang/R :: ^R$
dev-lang/R[tk] {
- tcl/tk 8.5
- Tcl/Tk (>= 8.5)
- tcltk (but only for the GUI
-}
-
-# base packages that always assumed to be provided by dev-lang/R (taken from generate_ebuild)
-% {
- base
- compiler
- datasets
- graphics
- grDevices
- grid
- methods
- parallel
- splines
- stats
- stats4
+ tcl/tk
tcltk
- tools
- utils
}
-# FIXME, seems to be provided too
-% {
- stepfun
- ts
- package ts
- package ts (included in the R release)
-}
# modreg is in stats, according to https://stat.ethz.ch/pipermail/bioconductor/2010-June/034197.html
! :: modreg
# R is always compiled with '--enabled-R-shlib'
! {
- R must be compiled with --enable-R-shlib if the server is to be built
- R must be compiled with --enable-R-shlib if theserver is to be built
- R must be compiled with --enable-R-shlibif the server is to be built
- Download regular shlib (420 KB) from externalsource ('xls.getshlib()' or manually)
- R built as a shared object
- R built as a shared object.
- R built as a shared or static (R >= 2.7.0) library
- R built as a shared orstatic library
+ --enable-R-shlib
+ xls.getshlib
+ R built as a shared
R-0.64 or later
- Regular shlib must be obtained from an externalsource (use 'xls.getshlib()' or dl manually).
- dl regular shlib with 'xls.getshlib()'or manually (~420 KB)
+}
+
+# base packages that always assumed to be provided by dev-lang/R (taken from generate_ebuild)
+% {
+ ^base$
+ ^compiler$
+ ^datasets$
+ ^graphics$
+ ^grDevices$
+ ^grid$
+ ^methods$
+ ^parallel$
+ ^splines$
+ ^stats4?
+ ^tools$
+ ^utils$
+}
+
+# FIXME, seems to be provided too
+% {
+ ^stepfun$
+ ^ts$
+ package.*ts
}
diff --git a/config/simple-deprules.d/app b/config/simple-deprules.d/app
index 99ba3c3..6c086c4 100644
--- a/config/simple-deprules.d/app
+++ b/config/simple-deprules.d/app
@@ -3,10 +3,7 @@
app-admin/ec2-api-tools :: ec2-api-tools
# FIXME zip or unzip?
-app-arch/zip :: zip
+app-arch/zip :: ^zip$
# FIXME: this is not satisfiable, latest dieharder version in portage is 2.28.1
-app-crypt/dieharder {
- DieHarder library (>= 2.8.1) fromhttp://www.phy.duke.edu/~rgb/General/dieharder.php
- DieHarder library (>= 3.31.1) fromhttp://www.phy.duke.edu/~rgb/General/dieharder.php
-}
+app-crypt/dieharder :: DieHarder \ No newline at end of file
diff --git a/config/simple-deprules.d/app-text b/config/simple-deprules.d/app-text
index 6e4cdd4..810178c 100644
--- a/config/simple-deprules.d/app-text
+++ b/config/simple-deprules.d/app-text
@@ -1,35 +1,16 @@
#deptype sys
-app-text/antiword {
- Antiword (http://www.winfield.demon.nl/) forreading MS Word files
- antiword for reading MS Word files
- Antiword (<http://www.winfield.demon.nl/>) forreading MS Word files
-}
+app-text/antiword :: Antiword
~app-text/ghostscript-gpl :: ghostscript
app-text/poppler {
- pdfinfo andpdftotext for reading PDF
- pdfinfo and pdftotext from Poppler(http://poppler.freedesktop.org/) for reading PDF
- pdftotext from Poppler(http://poppler.freedesktop.org/) for reading PDF
-}
-
-# pdflatex?
-app-text/texlive {
- (PDF)LaTeX (http://www.latex-project.org/) withpdfpages package for studentGrowthPlot option in visualizeSGPto bind together student growth plots into school catalogs.
- (PDF)LaTeX (http://www.latex-project.org/) with'pdfpages' package for studentGrowthPlot option in visualizeSGPto bind together student growth plots into school catalogs.
- (PDF)LaTeX for saveLatex()
-}
-
-app-text/poppler {
+ poppler
pdfinfo
+ pdftotext
}
+# pdflatex?
+app-text/texlive :: LaTeX
~app-text/pandoc :: pandoc
-app-text/pandoc {
- pandoc (>= 1.12.3) -http://johnmacfarlane.net/pandoc
- pandoc with https support
- Package vignettes based on R Markdown v2 requirePandoc (http://pandoc.org). The function rst2pdf() andvignettes based on reStructuredText require rst2pdf(https://github.com/rst2pdf/rst2pdf).
-}
-
diff --git a/config/simple-deprules.d/compound_deps b/config/simple-deprules.d/compound_deps
index 963ee0f..b0c0133 100644
--- a/config/simple-deprules.d/compound_deps
+++ b/config/simple-deprules.d/compound_deps
@@ -2,50 +2,45 @@
( media-libs/fontconfig media-fonts/corefonts ) {
fontconfig and msttcorefonts
- fontconfig and msttcorefonts recommended)
}
( net-libs/liboauth net-misc/curl ) {
- liboauth (>= 0.9.4) liboauth.sourceforge.net andlibcurl http://curl.haxx.se
+ liboauth.*curl
}
# FIXME
( sci-libs/blas-atlas dev-util/nvidia-cuda-toolkit ) {
- Atlas development build as well as a Nvidia GPU withCUDA support
+ Atlas.*Nvidia GPU.*CUDA
}
|| ( dev-libs/libxml2 dev-libs/expat ) {
- Daniel Veillard's libxml(ftp://ftp.gnome.org/pub/GNOME/sources/libxml/)and/orJim Clark's expat (http://www.jclark.com/xml)
- Daniel Veillard's libxml(ftp://ftp.gnome.org/pub/GNOME/stable/sources/libxml/)and/orJim Clark's expat (http://www.jclark.com/xml)
+ libxml.*expat
}
( media-libs/tiff >=sci-libs/fftw-3 ) {
- optional libtiff and fftw3
+ libtiff.*fftw3
}
( sci-libs/gdal sci-libs/proj ) {
- for building from source: GDAL >= 1.3.1 && GDAL < 1.6.0 (until tested) library and PROJ.4 (proj >= 4.4.9)
- for building from source: GDAL >= 1.3.1 library and PROJ.4 (proj >= 4.4.9)
- for building from source: GDAL >= 1.3.1 library and PROJ.4(proj >= 4.4.9)
- for building from source: GDAL >= 1.6.0 library and PROJ.4(proj >= 4.4.9)
+ GDAL.*PROJ.4
}
( dev-libs/mpfr dev-libs/gmp ) {
- http://mpfr.org/) and GMP (GNU Multiple Precision library
+ mpfr.*GMP
}
|| ( media-gfx/imagemagick media-gfx/graphicsmagick ) {
- ImageMagick (http://imagemagick.org) orGraphicsMagick (http://www.graphicsmagick.org) for saveGIF()
+ ImageMagick.*GraphicsMagick
}
|| ( media-gfx/imagemagick media-gfx/graphicsmagick app-office/lyx ) {
- ImageMagick (http://imagemagick.org) orGraphicsMagick (http://www.graphicsmagick.org) or LyX(http://www.lyx.org) for saveGIF()
+ ImageMagick.*GraphicsMagick.*LyX
}
|| ( media-libs/tiff virtual/jpeg ) {
- libtiff and/or libjpeg
+ libtiff.*libjpeg
}
( virtual/blas virtual/lapack ) {
- BLAS/LAPACK libraries
+ BLAS.*LAPACK
}
diff --git a/config/simple-deprules.d/dev b/config/simple-deprules.d/dev
index 89759fc..faa01d9 100644
--- a/config/simple-deprules.d/dev
+++ b/config/simple-deprules.d/dev
@@ -10,74 +10,34 @@ dev-cpp/gtkmm :: gtkmm-2.4
}
# FIXME
-dev-db/unixODBC {
- An ODBC driver manager and drivers. See README.
- An ODBC3 driver manager and drivers.
- An ODBC3 driver manager and drivers. See README.
- ODBC support and a back end database
-}
+dev-db/unixODBC :: ODBC
-dev-java/ant :: ant
+dev-java/ant :: ^ant$
dev-java/jdbc-postgresql :: PostgreSQL JDBCdriver
-
-# try to slot-match dev-lang/python, but use known slots only
-~dev-lang/python:slotparts=2:restrict=2.7,3.2,3.3,3.4 {
- python
- python headers
-}
# else fall back to fuzzy
~dev-lang/python {
- python
+ ^python
}
# lowest python version in portage: 2.7 (2.6 masked)
dev-lang/python {
- Python (>= 2.4) to run Asciidoc(http://www.python.org/)
- Python 2.7.x or Python 3.2.x-3.4.x
+ ^Python
}
-
dev-lang/lua :: lua version>= 5.1.4
~dev-lang/lua :: lua
-~dev-tex/pgf {
- pgf
-}
+~dev-tex/pgf :: ^pgf$
->=dev-tex/pgf-2.10 {
- pgf (>=2.10) (http://sourceforge.net/projects/pgf/)for the vignette
-}
+>=dev-tex/pgf-2.10 :: pgf.*>=2.10
-~dev-tcltk/bwidget {
- bwidget
- Tcl/Tk extensions BWidget
-}
+~dev-tcltk/bwidget :: bwidget
~dev-tcltk/tktable :: tktable
-dev-util/cmake {
- cmake
- cmake (http://www.cmake.org)
-}
-
-~dev-python/numpy {
- numpy
-}
+dev-util/cmake :: cmake
-# FIXME: the jdk rules are not quite correct,
-# virtual/jdk:1.7 (probably) works for some packages, too
-#
-~virtual/jdk:slotparts=i1.6:restrict=1.6,6.0 {
- java
- Java version
- java runtime
-}
-
-~virtual/jdk:slotparts=i1.7:restrict=1.7,7.0 {
- java
- Java version
- java runtime
-}
+~dev-python/numpy :: numpy
# slot-relative rules take precedence
# TODO: slot-restricted rules should get a lower priority
diff --git a/config/simple-deprules.d/dev-libs b/config/simple-deprules.d/dev-libs
index b46d2a6..b0faa08 100644
--- a/config/simple-deprules.d/dev-libs
+++ b/config/simple-deprules.d/dev-libs
@@ -1,95 +1,52 @@
#deptype sys
-~dev-libs/atk :: ATK
+~dev-libs/atk :: ^ATK$
~dev-libs/openssl :: OpenSSL
-~dev-libs/boost {
- boost library
- boost
-}
-dev-libs/boost {
- Boost C++ libraries (1.31 or greater)
- Boost library (>= 1.34.0) from http://www.boost.org
- Boost library (>= 1.34.0) fromhttp://www.boost.org
- Boost library from http://www.boost.org
- Boost libraryfrom http://www.boost.org
- boost headers for smart pointers
- The Boost 'program_options' library(http://boost.org) is required.
- Boost (or the BoostHeaders package)
-}
+~dev-libs/boost :: boost
-~dev-libs/glib {
- glib
- glib2
-}
+~dev-libs/glib :: glib
~dev-libs/gmp {
libgmp
- gmp
-}
-~dev-libs/gmp {
- GMP (GNU MP bignum library
- GMP (GNU MP bignum library)
- GMP (GNU Multiple Precision library
- http://gmplib.org/)
+ ^gmp
+ gmplib
}
~dev-libs/libffi :: libffi
~dev-libs/libpcre {
- libpcre
pcre
}
~dev-libs/libxml2 {
- xml
- xml2
- libxml
- libxml2
+ ^xml
+ ^libxml
}
~dev-libs/libxslt :: libxslt
dev-libs/mpc {
- and MPC (Multiple Precision ComplexLibrary
- http://www.multiprecision.org/)
+ ^mpc$
+ multi.*precision
}
-~dev-libs/mpfr {
- MPFR (MP Floating-Point Reliable Library
- mpfr
- http://mpfr.org/)
-}
+~dev-libs/mpfr :: mpfr
+
# FIXME versions -> fuzzy
-dev-libs/quantlib {
- QuantLib libraries must be installed
- QuantLib library (>= 0.8.1) from http://quantlib.org
- QuantLib library (>= 0.9.0) from http://quantlib.org
- QuantLib library (>= 0.9.7) from http://quantlib.org
- QuantLib library (>= 0.9.7) fromhttp://quantlib.org
- QuantLib library (>= 0.9.9) fromhttp://quantlib.org
- QuantLib library from http://quantlib.org
-}
+dev-libs/quantlib :: QuantLib
~dev-libs/quantlib {
QuantLib library
}
-~dev-libs/xerces-c {
- xerces-c
- libxerces-c
-}
+~dev-libs/xerces-c :: xerces-c
~sys-devel/clang {
clang
}
-dev-libs/geoip {
- GeoIP from MaxMinds
-}
+dev-libs/geoip :: GeoIP
-dev-libs/icu {
- ICU4C (>= 50
- ICU4C (>= 52
-}
+dev-libs/icu :: ICU4C
diff --git a/config/simple-deprules.d/dot_remap b/config/simple-deprules.d/dot_remap
deleted file mode 100644
index 03aa2f4..0000000
--- a/config/simple-deprules.d/dot_remap
+++ /dev/null
@@ -1,134 +0,0 @@
-#! NOPARSE
-#
-# !!! This file should no longer be necessary
-# (the dynamic selfdep pool is able to remap dots automatically)
-#
-
-#deptype pkg,selfdep
-
-~sci-R/aroma_affymetrix :: aroma.affymetrix
-~sci-R/aroma_apd :: aroma.apd
-~sci-R/aroma_core :: aroma.core
-~sci-R/aroma_light :: aroma.light
-
-~sci-R/bio_infer :: bio.infer
-
-~sci-R/Ckmeans_1d_dp :: Ckmeans.1d.dp
-~sci-R/clim_pact :: clim.pact
-~sci-R/compute_es :: compute.es
-~sci-R/conf_design :: conf.design
-
-~sci-R/data_table :: data.table
-~sci-R/DoE_base :: DoE.base
-~sci-R/DoE_wrapper :: DoE.wrapper
-
-~sci-R/ergm_userterms :: ergm.userterms
-
-~sci-R/FrF2_catlg128 :: FrF2.catlg128
-~sci-R/FunciSNP :: FunciSNP.data
-~sci-R/futile_any :: futile.any
-~sci-R/futile_logger :: futile.logger
-~sci-R/futile_matrix :: futile.matrix
-~sci-R/futile_options :: futile.options
-~sci-R/futile_paradigm :: futile.paradigm
-
-~sci-R/gamlss_data :: gamlss.data
-~sci-R/gamlss_dist :: gamlss.dist
-~sci-R/gamlss_nl :: gamlss.nl
-~sci-R/gamlss_tr :: gamlss.tr
-~sci-R/gamlss_util :: gamlss.util
-~sci-R/GO_db :: GO.db
-
-~sci-R/haplo_score :: haplo_score
-~sci-R/haplo_stats :: haplo_stats
-~sci-R/heapmap_plus :: heatmap.plus
-
-~sci-R/lava_tobit :: lava.tobit
-
-~sci-R/minpack_lm :: minpack.lm
-
-~sci-R/opencpu_encode :: opencpu.encode
-~sci-R/openNLPmodels_en :: openNLPmodels.en
-~sci-R/openNLPmodels_es :: openNLPmodels.es
-~sci-R/operator_tools :: operator.tools
-~sci-R/orloca_es :: orloca.es
-~sci-R/oro_dicom :: oro.dicom
-~sci-R/oro_nifti :: oro.nifti
-
-~sci-R/org_Ag_eg_db :: org.Ag.eg.db
-~sci-R/org_At_tair_db :: org.At.tair.db
-~sci-R/org_Bt_eg_db :: org.Bt.eg.db
-~sci-R/org_Ce_eg_db :: org.Ce.eg.db
-~sci-R/org_Cf_eg_db :: org.Cf.eg.db
-~sci-R/org_Dm_eg_db :: org.Dm.eg.db
-~sci-R/org_Dr_eg_db :: org.Dr.eg.db
-~sci-R/org_EcK12_eg_db :: org.EcK12.eg.db
-~sci-R/org_EcSakai_eg_db :: org.EcSakai.eg.db
-~sci-R/org_Gg_eg_db :: org.Gg.eg.db
-~sci-R/org_Hs_eg_db :: org.Hs.eg.db
-~sci-R/org_Mm_eg_db :: org.Mm.eg.db
-~sci-R/org_Mmu_eg_db :: org.Mmu.eg.db
-~sci-R/org_Pf_plasmo_db :: org.Pf.plasmo.db
-~sci-R/org_Pt_eg_db :: org.Pt.eg.db
-~sci-R/org_Rn_eg_db :: org.Rn.eg.db
-~sci-R/org_Sc_sgd_db :: org.Sc.sgd.db
-~sci-R/org_Sco_eg_db :: org.Sco.eg.db
-~sci-R/org_Ss_eg_db :: org.Ss.eg.db
-~sci-R/org_Xl_eg_db :: org.Xl.eg.db
-
-~sci-R/R_cache :: R.cache
-~sci-R/RcmdrPlugin_IPSUR :: RcmdrPlugin.IPSUR
-~sci-R/R_devices :: R.devices
-~sci-R/R_filesets :: R.filesets
-~sci-R/R_huge :: R.huge
-~sci-R/R_matlab :: R.matlab
-~sci-R/R_methodsS3 :: R.methodsS3
-~sci-R/ROI_plugin_glpk :: ROI.plugin.glpk
-~sci-R/ROI_plugin_quadprog :: ROI.plugin.quadprog
-~sci-R/ROI_plugin_symphony :: ROI.plugin.symphony
-~sci-R/R_oo :: R.oo
-~sci-R/rpart_plot :: rpart.plot
-~sci-R/R_rsp :: R.rsp
-~sci-R/RSQLite_extfuns :: RSQLite.extfuns
-~sci-R/R_utils :: R.utils
-
-~sci-R/Sim_DiffProc :: Sim.DiffProc
-~sci-R/SNPMaP_cdm :: SNPMaP.cdm
-~sci-R/survJamda_data :: survJamda.data
-
-~sci-R/tawny_types :: tawny.types
-
-~sci-R/DO_db :: DO.db
-~sci-R/IlluminaHumanMethylation27k_db :: IlluminaHumanMethylation27k.db
-~sci-R/IlluminaHumanMethylation450k_db :: IlluminaHumanMethylation450k.db
-~sci-R/KEGG_db :: KEGG.db
-~sci-R/SNPlocs_Hsapiens_dbSNP_20090506 :: SNPlocs.Hsapiens.dbSNP.20090506
-~sci-R/SNPlocs_Hsapiens_dbSNP_20100427 :: SNPlocs.Hsapiens.dbSNP.20100427
-~sci-R/SNPlocs_Hsapiens_dbSNP_20101109 :: SNPlocs.Hsapiens.dbSNP.20101109
-~sci-R/gahgu133plus2_db :: gahgu133plus2.db
-~sci-R/hgfocus_db :: hgfocus.db
-~sci-R/hgu133a_db :: hgu133a.db
-~sci-R/hgu133plus2_db :: hgu133plus2.db
-~sci-R/hgu95a_db :: hgu95a.db
-~sci-R/hgu95av2_db :: hgu95av2.db
-~sci-R/hgug4112a_db :: hgug4112a.db
-~sci-R/hu6800_db :: hu6800.db
-~sci-R/illuminaHumanv1_db :: illuminaHumanv1.db
-~sci-R/nutshell_bbdb :: nutshell.bbdb
-~sci-R/reactome_db :: reactome.db
-
-~sci-R/RmiR_Hs_miRNA :: RmiR.Hs.miRNA
-~sci-R/TxDb_Hsapiens_UCSC_hg18_knownGene :: TxDb.Hsapiens.UCSC.hg18.knownGene
-~sci-R/TxDb_Hsapiens_UCSC_hg19_knownGene :: TxDb.Hsapiens.UCSC.hg19.knownGene
-~sci-R/bigmemory_sri :: bigmemory.sri
-~sci-R/gamlss_add :: gamlss.add
-~sci-R/gemtc_jar :: gemtc.jar
-~sci-R/haplo_stats :: haplo.stats
-~sci-R/nutshell_audioscrobbler :: nutshell.audioscrobbler
-~sci-R/pd_charm_hg18_example :: pd.charm.hg18.example
-~sci-R/pd_mapping250k_nsp :: pd.mapping250k.nsp
-~sci-R/pd_mapping250k_sty :: pd.mapping250k.sty
-~sci-R/pd_mapping50k_hind240 :: pd.mapping50k.hind240
-~sci-R/pd_mapping50k_xba240 :: pd.mapping50k.xba240
-~sci-R/simdat_base :: simdat.base
-
diff --git a/config/simple-deprules.d/ignored_text b/config/simple-deprules.d/ignored_text
index 097f004..b05353d 100644
--- a/config/simple-deprules.d/ignored_text
+++ b/config/simple-deprules.d/ignored_text
@@ -2,78 +2,53 @@
# ignored text
! {
- available at <http://csound.sourceforge.net/>. See<http://playitbyr.org/csound.html> for more guidance on settingup Csound.
- available at<http://csound.sourceforge.net/>. This package uses the sharedlibrary file
- becauseBRugs does not support other platforms/OS right now.
- binary Linux distributions often package thelibrary separately from the executible file
- it is an extension for the R package tcltk that consists of Tclscripts. See README file.
- all other functions are stand alone)
- see also the topic 'SoPhy' in the documentation
- see also the topic'SoPhy' in the documentation
- see file README
- see README
- see README.
- see ./README.
- see the cloudRmpi manual (vignette)for details.
+ does not support
+ all other functions are stand alone
+ documentation
+ README
+ INSTALL
+ so for instance
+ optional
+ suggested
+ See the
see topic SoPhy below
- so for instance onDebian and Ubuntu you would need the "libcsound64-dev" package.See the package web site for more guidance on setup andconfiguration.
- so for instance onDebian and Ubuntu you would need the "libcsound64-dev" package.See the web site below for more guidance on setup.
some Windows variants are supported experimentally
- your mileage may vary)
- optional)
- heavily suggested)
- and Windows
- hence Windows or Linux
- $distributions package thelibrary file separately from the executible
- libraries(See the INSTALL file)
- or INSTALL.windows under Windows
- standard unix tools (e.g.
- rgdal OSX binary packages are also available at the samesite.
- rgdal OSX binary packages are also available at the same site.
- probably)
- Linux and Mac
- MPICH2 (>= 1.4.1p1) on Windows
+ your mileage may vary
+ Windows
+ distributions package
+ distributions often package
+ probably
which is included with standard Mac and Windowsinstallations of Csound. Some Linux distributions package thelibrary file separately from the executible
- playitbyr creates sound using the csound package
- which requires the free and open source software synthesizerCsound
- A valid copy of the Csound library must present.Csound can be downloaded Thelibrary is included in the Windows and Mac OS X binaries
- A valid copy of the Csound library must present.Csound can be downloaded Thelibrary is included in the Windows
binary Linux distributions often package the library separatelyfrom the executible file
- so for instance on Debian and Ubuntuyou would need the "libcsound64-dev" package.
For the MERLIN wrapper
+ Debian
+ Ubuntu
Mac
- Mac OSX
- Mac OS X
- Mac OS X binaries
- Mac.Parallel HDF5
+ OSX
+ OS X
Linux/64bit
sources are included for other OSes.
see readme.txt
- so for instance on Debian
- so for instance onDebian
- Ubuntu you would need the "libcsound64-dev" package.See the package web site for more guidance on setup andconfiguration.
- Ubuntuyou would need the "libcsound64-dev" package.
- which is included with standard Mac
+ so for instance
+ you would need the
which requires the free
- drivers.
+ drivers
License
its development files
- library (version2.2.0 or later)
- libraries(See README.REQ)
- Google Chrome for Windows
+ ^library
+ Google Chrome
for externalization
writing some graphicformats
- available athttp://www.monetdb.org
- it is used in the demos too).
+ available at
+ it is used in the demos too
headers
- OpenCSW.
+ OpenCSW
+ Linux
+ precision AMD or Nvidia GPU
+ ^and$
+ in addition
}
-# that's a hardware requirement
-! :: double-precision AMD or Nvidia GPU
-
-% :: Linux
-
# ignore "Windows" in dependency fields:
# (a) there's OS_Type for OS restrictions
# (b) it's a filler word sometimes ("xyz on Solaris, Linux and Windows")
@@ -89,28 +64,12 @@
! :: None
! {
- Will use djmrgl or rgl packages for rendering ifpresent
- Will use djmrgl or rgl packages for rendering if present
- SYMPHONY for Windows (sources included for otherOSes)
+ Will use djmrgl or rgl packages for rendering
SYMPHONY libraries
}
-# ignore OSX recommendations
-! {
- GDAL OSX frameworks built by William Kyngesburye at http://www.kyngchaos.com/ may be used for source installs on OSX
- GDAL OSXframeworks built by William Kyngesburye athttp://www.kyngchaos.com/ may be used for source installs onOSX
- GDAL OSXframeworks built by William Kyngesburye athttp://www.kyngchaos.com/ may be used for source installs onOSX.
-}
-
-! {
- GEOS OSX frameworks built byWilliam Kyngesburye at http://www.kyngchaos.com/ may be usedfor source installs on OSX.
-}
-
# SoPhy splits its Depends field into windows and linux
! {
- windows:Tiff for windows
- windows: Tiff (libtiff3.dll)
- windows: Tiff(libtiff3.dll)
zlib1.dll and jpeg62.dll
}
diff --git a/config/simple-deprules.d/media b/config/simple-deprules.d/media
index 41d8a03..3392d87 100644
--- a/config/simple-deprules.d/media
+++ b/config/simple-deprules.d/media
@@ -12,7 +12,7 @@ media-sound/csound {
#deptype all
media-gfx/imagemagick {
- Image Magick (for reading non PPM format)
+ Image Magick
}
#deptype sys
@@ -23,25 +23,15 @@ media-gfx/graphviz :: dot from graphviz
}
media-gfx/swftools {
- SWF Tools (http://swftools.org) forsaveSWF()
- SWF Tools (http://swftools.org) for saveSWF()
+ SWF.*Tools
}
virtual/ffmpeg {
- FFmpeg (http://ffmpeg.org) for saveVideo()
- FFmpeg(http://ffmpeg.org) for saveVideo()
ffmpeg
}
-media-gfx/dcraw {
- dcraw(for reading RAW images).
- dcraw (for readingRAW images).
-}
+media-gfx/dcraw :: dcraw
-media-libs/fontconfig {
- fontconfig
-}
+media-libs/fontconfig :: fontconfig
-media-fonts/corefonts {
- msttcorefonts
-}
+media-fonts/corefonts :: msttcorefonts
diff --git a/config/simple-deprules.d/media-libs b/config/simple-deprules.d/media-libs
index 8b7ba10..799335f 100644
--- a/config/simple-deprules.d/media-libs
+++ b/config/simple-deprules.d/media-libs
@@ -3,23 +3,15 @@
~media-libs/flac :: flac
# FIXME: some packages write optional deps into SystemRequirements (e.g. rgl from CRAN)
-media-libs/freetype :: FreeType (optional)
~media-libs/freetype :: freetype
media-libs/freetype:2 :: recommended: freetype2
-media-libs/gd {
- libgd (>= 2.0.28 http://www.boutell.com/gd/)
- libgd (>= 2.0.29 http://www.boutell.com/gd/)
- libgd (freetype2
-}
+media-libs/gd :: libgd
+
+media-libs/libpng :: libpng
-media-libs/libpng {
- libpng(>=1.2.9
- libpng (optional)
- libpng(optional)
-}
~media-libs/libpng {
- png
+ png$
libpng
}
@@ -27,13 +19,9 @@ media-libs/libpng {
~media-libs/netpbm :: netpbm
-media-libs/raptor :: libraptor2 (>= 2.0.0 http://librdf.org/raptor/)
+media-libs/raptor :: libraptor
-media-libs/tiff {
- linux: libtiff (and libtiff-devel)
- optional libtiff
- optionally libtiff
-}
+media-libs/tiff :: libtiff
~media-libs/tiff {
tiff
@@ -41,8 +29,4 @@ media-libs/tiff {
libtiff-devel
}
-virtual/jpeg {
- libjpeg
- jpeg
- jpeg libraries
-}
+virtual/jpeg :: jpeg
diff --git a/config/simple-deprules.d/misc b/config/simple-deprules.d/misc
index 9157f64..f403705 100644
--- a/config/simple-deprules.d/misc
+++ b/config/simple-deprules.d/misc
@@ -1,9 +1,7 @@
-dev-vcs/git {
- git
-}
+dev-vcs/git :: ^git$
>=app-emulation/wine-1.5.26 {
- wine (>= wine-1.5.26)
+ wine.*1.5.26
}
diff --git a/config/simple-deprules.d/net b/config/simple-deprules.d/net
index ab87ea8..a2e6184 100644
--- a/config/simple-deprules.d/net
+++ b/config/simple-deprules.d/net
@@ -1,31 +1,20 @@
#deptype sys
-net-misc/curl {
- curl (version 7.12.0) http://curl.haxx.se
- curl (version 7.12.0 or higher)<http://curl.haxx.se>
- curl (version 7.12.0 or higher) http://curl.haxx.se
- curl (version 7.12.0 or higher) <http://curl.haxx.se>
- curl (version 7.14.0 or higher) http://curl.haxx.se
- you will often have toexplicitly install libcurl-devel to have the header files andthe libcurl library.
- libcurl (version 7.14.0 or higher)http://curl.haxx.se. On Linux systems
- you will oftenhave to explicitly install libcurl-devel to have theheader files
- libcurl: libcurl-devel (rpm) orlibcurl4-openssl-dev (deb).
-}
+net-misc/curl :: curl
~net-misc/curl {
curl
libcurl
- the libcurl library.
+ the libcurl library
}
# FIXME
net-libs/czmq :: libzmq
-net-libs/zeromq {
- or ZeroMQ library >=4.0.4. Solaris 10 needs ZeroMQ library 4.0.7
-}
+net-libs/zeromq :: ZeroMQ
net-misc/s3cmd :: s3cmd
virtual/ssh {
- ssh daemon on the server side only:see the rreval manual (vignette) for details.
+ ^ssh
+ ssh$
}
diff --git a/config/simple-deprules.d/nvidia b/config/simple-deprules.d/nvidia
index ed77098..69a5775 100644
--- a/config/simple-deprules.d/nvidia
+++ b/config/simple-deprules.d/nvidia
@@ -2,34 +2,24 @@
# lowest cuda version in portage is 4.2.9
dev-util/nvidia-cuda-toolkit {
- NVIDIA CUDA Toolkit (>= release 3.0)
- Nvidia CUDAToolkit (>= release 3.0)
- Nvidia's CUDA toolkit (>= release 2.3)
- NVIDIA CUDA Toolkit 3.1 or above
- NVIDIA CUDAtoolkit
- NVIDIA CUDA Toolkit (>= release 4.0)
+ NVIDIA.*CUDA.*Toolkit
}
>=dev-util/nvidia-cuda-toolkit-5.0 {
- Nvidia's CUDA toolkit (>= release 5.0)
+ Nvidia's CUDA toolkit.*5.0
}
# FIXME cuda-toolkit or sdk?
dev-util/nvidia-cuda-toolkit {
- nvcc (>= release 2.1)
- nvcc (>= release 2.1) nVidia GPU (compute number >=1.3)
- nvcc (release 2.3) NVIDIA Cuda Compiler driver
- nvcc (release 3.0) NVIDIA Cuda Compiler driver
- nvcc (release >= 3.1) (NVIDIA Cuda Compilerdriver)
- nvcc release 3.1 (NVIDIA Cuda Compiler driver)
+ nvcc
}
>=dev-util/nvidia-cuda-toolkit-4.1 {
- Nvidia's CUDA toolkit (release >= 4.1)
+ Nvidia's CUDA toolkit.*4.1
}
>=dev-util/nvidia-cuda-toolkit-4.5 {
- Nvidia's CUDA toolkit (>= release 4.5)
+ Nvidia's CUDA toolkit.*4.5
}
~dev-util/nvidia-cuda-toolkit {
@@ -37,5 +27,5 @@ dev-util/nvidia-cuda-toolkit {
}
>=x11-drivers/nvidia-drivers-270 {
- Nvidia CUDA driver (>= 270.xx.xx)
+ Nvidia CUDA driver.*270
}
diff --git a/config/simple-deprules.d/sci b/config/simple-deprules.d/sci
index 70521d9..6a93b72 100644
--- a/config/simple-deprules.d/sci
+++ b/config/simple-deprules.d/sci
@@ -2,8 +2,7 @@
# == geo ==
~sci-geosciences/gmt {
- libgmt
- gmt
+ gmt$
}
~sci-geosciences/grass :: grass
@@ -11,44 +10,35 @@
~sci-mathematics/glpk {
glpk
- GLPK library package (e.g.
}
~sci-mathematics/jags :: jags
-sci-mathematics/jags :: jags (see http://mcmc-jags.sourceforge.net)
-
-sci-mathematics/jags {
- JAGS (>= 3.2.0) (or WinBUGS (>= 1.4) or OpenBUGS(>= 3.2.2))
-}
# lowest octave version in portage is 3.4
sci-mathematics/octave {
- Octave (>= 3.2.4) and its development files
+ Octave
}
# lowest version in portage is 2.3.4-r1
sci-mathematics/pari {
- PARI/GP >= 2.3.0 [strongly recommended for logkda()]
- PARI/GP >= 2.3.0 [strongly recommended forlogkda()]
pari/gp
}
sci-mathematics/singular {
- Singular (http://www.singular.uni-kl.de) for exactcalculation of the MFR for graphs without splitting edges (onlyfor Unix systems).
+ Singular
}
~sci-mathematics/yacas :: yacas
sci-mathematics/yacas {
- yacas (= 1.0.63) # instructions on home page
- yacas (>= 1.0.63) # instructions on home page
+ yacas
}
sci-mathematics/octave {
- Octave (>= 3.2.4)
+ Octave
}
sci-libs/netcdf {
- NetCDF4 (4.1 or later) libraries.
+ NetCDF4
}
# there's also sci-biology/clustalw-mpi
@@ -58,8 +48,8 @@ sci-biology/clustalw {
}
sci-biology/ncbi-tools++ {
- ncbi-blast+
- ncbi-tools++
+ ncbi-blast\+
+ ncbi-tools\+\+
}
sci-biology/kalign {
@@ -67,13 +57,13 @@ sci-biology/kalign {
}
sci-mathematics/glpk {
- libglpk-dev onDebian/Ubuntu)
+ libglpk-dev
}
#deptype all
# some packages have glpk in "pkg" deps
-# (FIXME: does glpk in that context refer to an R package?)
+# FIXME: does glpk in that context refer to an R package?
~sci-mathematics/glpk {
glpk
}
@@ -94,14 +84,14 @@ sci-mathematics/rstudio {
# lowest sci-physics/root version in portage is 5.32.03
sci-physics/root {
- root_v5.32.01 <http://root.cern.ch> - See READMEfile for installation instructions.
+ root_v5.32.01
}
# == visualization ==
~sci-visualization/ggobi :: ggobi
-sci-biology/merlin :: MERLIN(www.sph.umich.edu/csg/abecasis/merlin) must be installed andpointed to in the PATH environment variable.
+sci-biology/merlin :: MERLIN
sci-visualization/gnuplot {
gnuplot
diff --git a/config/simple-deprules.d/sci-libs b/config/simple-deprules.d/sci-libs
index 14da6a3..45506a8 100644
--- a/config/simple-deprules.d/sci-libs
+++ b/config/simple-deprules.d/sci-libs
@@ -8,15 +8,13 @@
# Use slot when the resolver can deal with them properly
>=sci-libs/fftw-3 {
fftw3
- fftw3 (optional)
}
~sci-libs/fftw :: fftw
# Use slot when the resolver can deal with them properly
~sci-libs/fftw :: fftw3
sci-libs/gdal {
- GDAL library from http://www.gdal.org/download.html
- GDAL library from http://www.remotesensing.org/gdal/download.html
+ GDAL library
}
~sci-libs/gdal {
@@ -30,37 +28,29 @@ sci-libs/gdal {
}
sci-libs/gsl {
- gsl. Note: users should have GSL installed. Windowsusers: 'consult the README file available in the inst directoryof the source distribution for necessary configurationinstructions'.
- gsl (with development libraries)
+ ^gsl
}
~sci-libs/gsl {
GNU GSL
- gsl
+ ^gsl
libgsl
- libgslcblas
- GNU GSL for the GSL random-number generators
- GNU GSL forthe GSL random-number generators
- GNU Scientific Library (GSL)
- GNU Scientific Library version
+ GNU Scientific Library
}
~sci-libs/hdf5 :: hdf5
sci-libs/hdf5[cxx] {
- libhdf5 (>= 1.8.x) with C++ interface(--enable-cxx=yes)
- libhdf5 (>= 1.8.12) with C++ interface(--enable-cxx=yes)
+ libhdf5.*C\+\+
}
# remnant of hdf5
! :: v18 API enabled
~sci-libs/itpp {
- itpp
- libitpp
+ itpp$
}
# FIXME: dev-lang/R[lapack]?
virtual/lapack {
- LAPACK sharedlibrary
- LAPACKshared library
+ LAPACK
}
sci-libs/lapack-atlas :: lapack_atlas
@@ -70,19 +60,12 @@ sci-libs/libsvm :: SVMlight
~sci-libs/mkl :: Intel MKL
-sci-libs/netcdf :: netcdf library version 4.1 or later
~sci-libs/netcdf :: netcdf
-sci-libs/proj :: proj 4.4.6 or higher (http://proj.maptools.org/)
->=sci-libs/proj-4.4.9 :: PROJ.4(proj >= 4.4.9)
-
+sci-libs/proj :: ^proj
# FIXME, portage version is 2.1.21
-sci-libs/udunits :: udunits (>= 1.11.7) or udunits2(>= 2.1.22)
-~sci-libs/udunits {
- udunits
- udunits-2
-}
+sci-libs/udunits :: udunits
virtual/blas :: blas
diff --git a/config/simple-deprules.d/selfdeps b/config/simple-deprules.d/selfdeps
deleted file mode 100644
index 63e49bc..0000000
--- a/config/simple-deprules.d/selfdeps
+++ /dev/null
@@ -1,22 +0,0 @@
-#! NOPARSE
-#! ERROR
-# Replaced by the selfdeps.d directory, which contains per-repo selfdep files.
-#
-# This file lists old rules, which are not yet included there.
-#
-
-#deptype pkg,selfdep
-
-sci-R/chron :: get.hist.quote needs packagechron.
-
-# FIXME: correct?
-~sci-R/CoCo {
- CoCoCore
- CoCoObjects
- CoCoRaw
-}
-sci-R/survival4 :: survival4 if survival models are to be used.
-~sci-R/survival5 :: survival5 for some examples
-sci-R/survival5 :: survival5 if survival models are to be used.
-
-~sci-R/VhayuR :: Vhayu
diff --git a/config/simple-deprules.d/selfdeps.d/sci-CRAN b/config/simple-deprules.d/selfdeps.d/sci-CRAN
index 5935939..0994353 100644
--- a/config/simple-deprules.d/selfdeps.d/sci-CRAN
+++ b/config/simple-deprules.d/selfdeps.d/sci-CRAN
@@ -1,30 +1,29 @@
#deptype pkg,selfdep
sci-CRAN/csound {
- A valid copy of the Csound library must be present.Csound can be downloaded from http://www.csounds.com. Thelibrary is included in the default Windows and Mac OS Xdistributions
- playitbyr creates sound using the csound package
- which requires the free and open source software synthesizerCsound
+ Csound
}
-~sci-CRAN/mimR :: mim
+# IRKernel has a conflicting named sci-R/repr.
+~sci-CRAN/repr :: ^repr$
+
+~sci-CRAN/mimR :: ^mim$
sci-CRAN/quadprog :: portfolio.optim needs package quadprog
sci-CRAN/rgl :: rgl packages for rendering
sci-CRAN/MVA {
- white.test needs packagemva
- white.test needs package mva
+ package.*mva
}
~sci-CRAN/sgeostat {
- sgeostat.
- geostat.
+ geostat
}
# the following rule is _not_ correct
-# (the dependency strings listed here want the "xgobi" program from
-# http://www.research.att.com/areas/stat/xgobi/, not the R package)
+# the dependency strings listed here want the "xgobi" program from
+# http://www.research.att.com/areas/stat/xgobi/, not the R package
#
## sci-CRAN/xgobi {
## xgobi must be installed additionally
@@ -33,8 +32,6 @@ sci-CRAN/MVA {
~sci-CRAN/BayesFactor :: BayesFactorPCL
->=sci-CRAN/adimpro-0.4.2 :: adimpro (>= 0.4.2)The R-package 'adimpro' (for reading
-
sci-CRAN/adimpro {
- The R-package 'adimpro' (for reading
+ adimpro
}
diff --git a/config/simple-deprules.d/sys b/config/simple-deprules.d/sys
index b2fa9bd..88ddb06 100644
--- a/config/simple-deprules.d/sys
+++ b/config/simple-deprules.d/sys
@@ -2,25 +2,19 @@
~sys-libs/db {
BerkelyDB
- BerkeleyDB
- Oracle Berkeley DB 11gR2
+ Berkeley.*DB
}
~sys-libs/zlib :: zlib
-sys-libs/zlib :: zlib (optional)
# => sys-cluster/
virtual/mpi {
- LamMPI(>= 6.5.9) or MPICH2(>= 1.0.2) or OpenMPI ()
- LamMpi(>= 6.5.9) or Mpich2(>= 1.0.2)
- OpenMPI (>= 1.5.4) on Linux
- OpenMPI or MPICH2
-}
-
-# the "... on Windows" line could probably be ignored
-virtual/mpi {
+ LamMPI
+ Open.*MPI
+ MPICH2
MPI2
- MPICH2 (>=1.4.1p1) on Windows
+ MPICH2
+ MPI.*library
}
! {
@@ -32,17 +26,15 @@ virtual/mpi {
~sci-R/Rcpp :: Rcpp
# Split across multiple lines, next line adds Linux and Mac
->=sys-cluster/openmpi-1.5.4 :: OpenMPI (>= 1.5.4) on Solaris
+>=sys-cluster/openmpi-1.5.4 :: OpenMPI
@selfdep
-sci-R/rJava :: JRI
-
-~app-text/pandoc :: Pandoc (http://johnmacfarlane.net/pandoc) forexporting markdown files to other formats.
+sci-R/rJava :: ^JRI$
->=dev-tcltk/tktable-2.9 :: Tktable (>= 2.9
+~dev-tcltk/tktable :: Tktable
->=app-text/aspell-0.60 :: aspell (>= 0.60
+~app-text/aspell :: aspell
-dev-libs/openssl :: OpenSSL library
+dev-libs/openssl :: OpenSSL
-~app-crypt/dieharder :: DieHarder library
+~app-crypt/dieharder :: DieHarder
diff --git a/config/simple-deprules.d/system.set b/config/simple-deprules.d/system.set
index 54fc6a5..1e9b3e8 100644
--- a/config/simple-deprules.d/system.set
+++ b/config/simple-deprules.d/system.set
@@ -2,43 +2,26 @@
# @system
! {
+ bash
+ ^awk$
+ gmake
GNU make
- GNU Make
- GNU Make forexternalization
- andg++ GNU compiler (a nvcc-compatible version of g++ is needed
- andg++ GNU compiler version 3.4 (version 4.4 is not yet compatiblewith nvcc).
- chmod)
-}
-
-% :: gcc
-# FIXME: newer gcc versions could work, too
-<sys-devel/gcc-4.4 :: gcc/g++ version 4.4 is not yet compatible with nvcc).
-<=sys-devel/gcc-4.5 :: gcc (release <= 4.5).
-
-#sys-devel/gcc[cxx] :: g++ or Microsoft VC++
-! :: g++ or Microsoft VC++
-! {
- g++-4.6.* or later should be sufficient
- g++-4.9.* or lateris preferred.
- gcc (release >= 4.5).
- C++11
- C++11 (supporting at least std=c++0x)
- A C++11 compiler. Version 4.6.* of g++ (ascurrently in Rtools) is insufficient
+ g\+\+ GNU compiler
+ chmod
+ ^gcc
+ ^g\+\+
+ ^C\+\+11
+ C\+\+11.*compiler
}
# always provided? (except for Gentoo/*BSD)
! {
- Linux operating system
- Linux operating system.
- Linuxoperationg system
+ Linux.*operating.*system
}
# always provided
! {
- POSIX-compliant OS (essentially anything but Windows)
- POSIX-compliant OS (essentially anything butWindows
- POSIX-compliant OS (essentially anything butWindows)
+ POSIX.*OS
Unix
- A 64-bit POSIX OS such as Linux or OS X with IANAtime zone data in /usr/share/zoneinfo as well as a C++11compiler.
}
# rpcgen is part of glibc
diff --git a/config/simple-deprules.d/unknown b/config/simple-deprules.d/unknown
index 8d1549d..04d20b6 100644
--- a/config/simple-deprules.d/unknown
+++ b/config/simple-deprules.d/unknown
@@ -2,7 +2,6 @@
# FIXME: which library is meant?
! {
- A C library with the fesetround/fegetroundfunctions.
- library.
- library
+ ^C.*library
+ ^library
}
diff --git a/config/simple-deprules.d/x11 b/config/simple-deprules.d/x11
index 2858ddd..ff93d39 100644
--- a/config/simple-deprules.d/x11
+++ b/config/simple-deprules.d/x11
@@ -1,26 +1,22 @@
#deptype sys
-x11-libs/cairo :: cairo (>= 1.2 http://www.cairographics.org/)
~x11-libs/cairo :: cairo
-~x11-libs/gtk+ :: gtk+
+~x11-libs/gtk+ :: gtk\+
~x11-libs/pango :: pango
# qt has its own category now
dev-qt/qtcore {
- qt
- Qt4 libraries and headers (http://qt.nokia.com)
- Qt4 libraries
+ ^qt$
+ ^Qt4.*libraries
}
-! :: headers (http://qt.nokia.com)
x11-misc/xclip {
- xclip (Linux)
+ xclip
}
virtual/opencl {
- OpenCL library
OpenCl
}
diff --git a/roverlay/depres/simpledeprule/abstractrules.py b/roverlay/depres/simpledeprule/abstractrules.py
index d31ffbe..a1d8522 100644
--- a/roverlay/depres/simpledeprule/abstractrules.py
+++ b/roverlay/depres/simpledeprule/abstractrules.py
@@ -8,7 +8,7 @@
__all__ = [ 'FuzzySimpleRule', 'SimpleRule', ]
-import logging
+import logging, re
from roverlay import config
from roverlay.depres import deprule
@@ -21,7 +21,7 @@ class SimpleRule ( deprule.DependencyRule ):
INDENT = 3 * ' '
def __init__ ( self,
- dep_str=None, priority=50, resolving_package=None,
+ dep_str=None, priority=80, resolving_package=None,
is_selfdep=0, logger_name='simple_rule',
selfdep_package_names=None, finalize=False,
):
@@ -67,6 +67,10 @@ class SimpleRule ( deprule.DependencyRule ):
self.dep_alias = frozenset ( self.dep_alias )
if self.prepare_lowercase_alias:
self.dep_alias_low = frozenset ( x.lower() for x in self.dep_alias )
+ temp_set = self.dep_alias_low
+ if self.is_selfdep:
+ temp_set = ("^{}$".format(x) for x in self.dep_alias_low)
+ self.dep_regex = re.compile('|'.join(x for x in temp_set))
def add_resolved ( self, dep_str ):
"""Adds an dependency string that should be matched by this rule.
@@ -80,7 +84,7 @@ class SimpleRule ( deprule.DependencyRule ):
def _find ( self, dep_str, lowercase ):
if lowercase:
if hasattr ( self, 'dep_alias_low' ):
- if dep_str in self.dep_alias_low:
+ if self.dep_regex.search(dep_str):
return True
elif dep_str in ( alias.lower() for alias in self.dep_alias ):
diff --git a/roverlay/depres/simpledeprule/rules.py b/roverlay/depres/simpledeprule/rules.py
index 869c5aa..12c6520 100644
--- a/roverlay/depres/simpledeprule/rules.py
+++ b/roverlay/depres/simpledeprule/rules.py
@@ -151,11 +151,11 @@ class SimpleIgnoreDependencyRule ( SimpleRule ):
RULE_PREFIX = '!'
- def __init__ ( self, priority=50, resolving_package=None, **kw ):
+ def __init__ ( self, priority=80, resolving_package=None, **kw ):
super ( SimpleIgnoreDependencyRule, self ) . __init__ (
logger_name = 'IGNORE_DEPS',
resolving_package=None,
- priority=50,
+ priority=80,
**kw
)
# --- end of SimpleIgnoreDependencyRule ---
@@ -187,7 +187,7 @@ class SimpleFuzzyIgnoreDependencyRule ( FuzzySimpleRule ):
RULE_PREFIX = '%'
- def __init__ ( self, priority=51, resolving_package=None, **kw ):
+ def __init__ ( self, priority=81, resolving_package=None, **kw ):
super ( SimpleFuzzyIgnoreDependencyRule, self ) . __init__ (
priority=priority,
resolving_package=resolving_package,