Skip to content

Commit b7007c7

Browse files
committed
Restructure & update CONTRIBUTING.md
1 parent 63a7c99 commit b7007c7

File tree

1 file changed

+35
-28
lines changed

1 file changed

+35
-28
lines changed

CONTRIBUTING.md

Lines changed: 35 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Make sure you have these prerequisites working:
1111
* The C++ compiler for your platform (invokable as `gcc`)
1212
* Optional: `latex` for building the pdf documentation
1313
* Optional: `kindlegen` for building the Kindle documentation
14-
* If you're running OSX, make sure you have some version of `libevent` installed
14+
* If you're running OSX, make sure you have some version of `libevent` installed (needed for Ddox)
1515

1616
## Getting the code
1717

@@ -23,9 +23,12 @@ code:
2323
cd $R
2424
git clone https://github.com/dlang/dlang.org
2525
git clone https://github.com/dlang/dmd
26+
git clone https://github.com/dlang/druntime
27+
git clone https://github.com/dlang/phobos
2628
```
2729

2830
The `dmd` compiler is needed for processing the documentation.
31+
`druntime` and `phobos` are only needed if their docs should be built.
2932

3033
## Building the main site
3134

@@ -54,48 +57,52 @@ currently being worked on. The "release" version is built with the "release"
5457
compiler, and the current version is built with the current compiler (which we
5558
already have from the previous step).
5659

57-
### Building the release libraries
60+
### Building the `prerelease` libraries
5861

59-
Fortunately there's no need to fumble with version numbers and git tags etc.;
60-
all is automated. Run this command:
62+
The more interesting stuff to build is the prerelease libraries because in all
63+
likelihood that's what needs looking at and testing.
6164

6265
```
6366
cd $R/dlang.org
64-
make -f posix.mak druntime-release
65-
make -f posix.mak phobos-release
66-
make -f posix.mak apidocs-release
67+
make -f posix.mak docs-prerelease
6768
```
6869

69-
These commands tell you the release being built in their first line of output.
70-
Then they proceed and clone the appropriate release for `dmd`, `druntime`, and
71-
`phobos`. After all commands have been executed, the following directories will
72-
be present in `$R`: `dlang.org`, `dmd`, `dmd-2.083.2`, `druntime-2.083.2`, and
73-
`phobos-2.083.2`. Note that the actual release number may not be `2.083.2`, but
74-
should be the same for all three directories.
70+
If you only want to build a specific part (e.g. Phobos), run:
7571

76-
The output is in `$R/dlang.org/web/phobos` and `$R/dlang.org/web/library`.
72+
```
73+
cd $R/dlang.org
74+
make -f posix.mak phobos-prerelease
75+
```
7776

78-
### Building the prerelease libraries
77+
(`docs-prerelease` is a shorthand for `dmd-prerelease`, `druntime-prerelease`, `phobos-releas` and `apidocs-prerelease`)
7978

80-
The more interesting stuff to build is the prerelease libraries because in all
81-
likelihood that's what needs looking at and testing. To do that two more
82-
repositories containing the core and standard libraries are needed: `druntime`
83-
and `phobos`:
79+
The output is in `$R/dlang.org/web/phobos-prerelease` and
80+
`$R/dlang.org/web/library-prerelease`.
81+
82+
### Building the `release` libraries
83+
84+
Fortunately there's no need to fumble with version numbers and git tags etc.;
85+
all is automated. Run this command:
8486

8587
```
86-
cd $R
87-
git clone https://github.com/dlang/druntime
88-
git clone https://github.com/dlang/phobos
88+
cd $R/dlang.org
89+
make -f posix.mak docs-release
8990
```
9091

91-
With the new repos in tow this builds the prerelease libraries:
92+
If you only want to build a specific part (e.g. Phobos), run:
9293

9394
```
9495
cd $R/dlang.org
95-
make -f posix.mak druntime-prerelease
96-
make -f posix.mak phobos-prerelease
97-
make -f posix.mak apidocs-prerelease
96+
make -f posix.mak phobos-release
9897
```
9998

100-
The output is in `$R/dlang.org/web/phobos-prerelease` and
101-
`$R/dlang.org/web/library-prerelease`.
99+
(`docs-release` is a shorthand for `dmd-release`, `druntime-release`, `phobos-releas` and `apidocs-release`)
100+
101+
These commands tell you the release being built in their first line of output.
102+
Then they proceed and clone the appropriate release for `dmd`, `druntime`, and
103+
`phobos`. After all commands have been executed, the following directories will
104+
be present in `$R`: `dlang.org`, `dmd`, `dmd-2.083.2`, `druntime-2.083.2`, and
105+
`phobos-2.083.2`. Note that the actual release number may not be `2.083.2`, but
106+
should be the same for all three directories.
107+
108+
The output is in `$R/dlang.org/web/phobos` and `$R/dlang.org/web/library`.

0 commit comments

Comments
 (0)