aboutsummaryrefslogtreecommitdiff
path: root/stdlib/project.lux
blob: 1f9e41d0e0da8606b113f1af3f9e7e749cec4cbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
["" ... The empty text ("") is used to specify the default profile.
 [... An optional identity for the project.
  ... It can also be specified or overriden in a non-default profile.
  ... This will be the name given to the project when installed/deployed as a dependency.
  "identity" ["com.github.luxlang" "stdlib" "0.6.5"]

  ... Every piece of information, and the whole "info" bundle, are optional.
  "info" ["url" "https://github.com/LuxLang/lux"
          "scm" "https://github.com/LuxLang/lux.git"
          "licenses" [["name" "Lux License v0.1.2"
                       "url" "https://github.com/LuxLang/lux/blob/master/license.txt"
                       "type" "repo"]]
          ... "organization" [["name" "Lux Foundation"
          ...                  "url" "http://example.com/lux_foundation"]]
          "developers" [["name" "Eduardo Julian"
                         "url" "https://github.com/eduardoejp"
                         ... "organization" ["name" "Lux Foundation"
                         ...                 "url" "http://example.com/lux_foundation"]
                         ]]
          ... "contributors" [["name" "Eduardo Julian"
          ...                  "url" "https://github.com/eduardoejp"
          ...                  "organization" ["name" "Lux Foundation"
          ...                                  "url" "http://example.com/lux_foundation"]]]
          ]

  ... An optional list of repositories you can deploy to, given aliases so they're easy to refer to with the "deploy" command.
  "deploy_repositories" ["snapshots" "https://oss.sonatype.org/content/repositories/snapshots/"
                         "releases" "https://oss.sonatype.org/service/local/staging/deploy/maven2/"]

  ... An optional list of repositories to use for fetching remote dependencies.
  ... Additionally, there is an implicit repository being used, which is https://repo1.maven.org/maven2/
  ... So, even if the "repositories" list were to be empty, you'd still have access to the default repository.
  "repositories" ["https://oss.sonatype.org/content/repositories/snapshots/"
                  "https://oss.sonatype.org/service/local/staging/deploy/maven2/"]
  ... The different directories to look for source code. The default is described below.
  ... "sources" ["source"]
  ... The directory for storing the build artifacts. The default is described below.
  ... "target" "target"
  ]

 ... The following are alternative profiles to use in various situations.
 "jvm"
 [... "compiler" specifies the dependency to fetch and use as the compiler.
  "compiler" ["com.github.luxlang" "lux-jvm" "0.6.5" "jar"]
  ... "dependencies" is an optional list of dependencies to fetch.
  ... The dependencies have the same shape as when specifying the compiler.
  ... When omitting the packaging format of the dependency, "tar" will be assumed.
  ... "dependencies" [["org.ow2.asm" "asm-all" "5.0.3" "jar"]
  ...                 ["com.github.luxlang" "stdlib" "0.6.4"]]
  ... The OS command to use when running JVM tests. The default is described below.
  ... "java" ["java" "-jar"]
  ]

 "js"
 ["compiler" ["com.github.luxlang" "lux-js" "0.6.5" "js"]
  ... The OS command to use when running JS tests. The default is described below.
  ... "js" ["node" "--stack_size=8192"]
  ]

 "lua"
 ["compiler" ["com.github.luxlang" "lux-lua" "0.6.5" "jar"]
  ... The OS command to use when running Lua tests. The default is described below.
  ... "lua" ["lua"]
  ]

 "python"
 ["compiler" ["com.github.luxlang" "lux-python" "0.6.5" "jar"]
  ... The OS command to use when running Python tests. The default is described below.
  ... "python" ["python3"]
  ]

 "ruby"
 ["compiler" ["com.github.luxlang" "lux-ruby" "0.6.5" "jar"]
  ... The OS command to use when running Ruby tests. The default is described below.
  ... "ruby" ["ruby"]
  ]

 "bibliotheca"
 ["info" ["description" "Standard Library for the Lux programming language."]
  "test" "test/lux"]

 "scriptum"
 ["info" ["description" "Documentation for the Standard Library for the Lux programming language."]
  "program" "documentation/lux"
  "test" "documentation/lux"]

 "aedifex"
 ["info" ["description" "A build system/tool made exclusively for Lux."]
  ... Parent profiles to this one.
  ... Specifying them here is like automatically using Aedifex's "with" command.
  "parents" ["jvm"]
  ... The name of the main module of the program.
  "program" "program/aedifex"
  ... The name of the main module where the tests are located.
  "test" "test/aedifex"]]