]> git.donarmstrong.com Git - cran2deb.git/blob - branch/double_build/inst/doc/DEPENDS
471f24011c41f87c59cc66e03def3126791e58a2
[cran2deb.git] / branch / double_build / inst / doc / DEPENDS
1 A dependency alias (created in populated_depend_aliases) is some name (such as
2 java) and some associated run and build time dependencies, specified like this:
3
4     alias_build java openjdk-6-jdk
5     alias_build java libgcj9-dev
6     alias_run java openjdk-6-jre
7
8 So when cran2deb needs to use the 'java' build dependency, it will add
9 "openjdk-6-jdk, libgcj9-dev" to the Build-Depends:. alias_run deals with
10 Depends: only.
11 Since in Debian you cannot Build-Depend: upon build-essential, there is a
12 special 'ignore' dependency alias (this can be handy for dropping unnecessary
13 system requirements)
14
15     alias_build ignore build-essential
16
17 populate_forcedep contains like:
18
19     force java rJava
20
21 which forces the R package rJava to use the dependency alias 'java'. This is
22 for cases where there is no SystemRequirement.
23
24 Finally, populate_sysreq has lines like:
25
26    sysreq quantlib quantlib%
27
28 This says, whenever a part of a SystemRequirement matches the SQL LIKE pattern
29 'quantlib%', use the dependency alias. SystemRequirements are converted to
30 lower case and messed around with; details are in R/debcontrol.R in the
31 sysreqs_as_debian function. R/debcontrol.R contains pretty much all of the code
32 for dependencies (the database interface code is in R/db.R).
33