Skip to content

Commit e623180

Browse files
committed
Move building docs into separate file
1 parent 583510c commit e623180

File tree

2 files changed

+41
-19
lines changed

2 files changed

+41
-19
lines changed

README.md

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,26 +21,10 @@ If you like this plugin and want to support my work, consider leaving a tip on K
2121
* [Download](https://godotengine.org/asset-library/asset/2334) from the asset store, or
2222
* [Download](https://github.com/mphe/GDNative-Ropesim/releases/latest) the latest release from the release page, or
2323
* [Download](https://github.com/mphe/GDNative-Ropesim/actions) it from the latest GitHub Actions run, or
24-
* [Compile](#building) it yourself.
25-
2. Copy or symlink `addons/ropesim` to your project's `addons/` directory
24+
* [Compile](docs/developing.md) it yourself.
25+
2. Move `addons/ropesim` to your project's `addons/` directory
2626
3. Enable the addon in the project settings
27-
4. Restart Godot
28-
29-
## Building
30-
31-
First, clone or download the repository and run `git submodule update --init --recursive`.
32-
33-
See [here](https://docs.godotengine.org/en/latest/tutorials/scripting/gdextension/gdextension_cpp_example.html#doc-gdextension-cpp-example) on how to create and compile GDExtension libraries.
34-
35-
To compile for Linux, run the following commands.
36-
Compiling for other platforms works analogously.
37-
38-
```sh
39-
$ scons target=template_release platform=linux optimize=speed arch=x86_64 -j8
40-
$ scons target=template_debug platform=linux arch=x86_64 -j8
41-
```
42-
43-
Output files are saved to `demo/addons/ropesim/bin/`.
27+
4. Possibly restart Godot
4428

4529
## Documentation and Usage
4630

@@ -70,6 +54,7 @@ When one of the above nodes is selected, a "*Ropesim*" menu appears in the edito
7054
### Advanced Topics
7155
- [Collisions Documentation](docs/collisions.md)
7256
- [Execution Order Documentation](docs/execution_order.md)
57+
- [Developing](docs/developing.md)
7358

7459

7560
## FAQ / Troubleshooting

docs/developing.md

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Developing
2+
3+
## Setup
4+
5+
Clone the repository and run `git submodule update --init --recursive`.
6+
7+
See [here](https://docs.godotengine.org/en/latest/tutorials/scripting/gdextension/gdextension_cpp_example.html#doc-gdextension-cpp-example) on how to create and compile GDExtension libraries.
8+
9+
## Building for Testing
10+
11+
To compile for Linux, run the following commands.
12+
Compiling for other platforms works analogously.
13+
14+
```sh
15+
$ scons target=template_debug platform=linux optimize=speed_trace arch=x86_64 -j8
16+
$ scons target=template_release platform=linux optimize=speed arch=x86_64 -j8
17+
```
18+
19+
Output files are saved to `demo/addons/ropesim/bin/`.
20+
21+
The repository contains utility scripts `compile_debug.sh/bat` and `compile_release.sh/bat` for convenience.
22+
Additional SCons arguments can be appended to the script call.
23+
24+
## Code Analysis
25+
26+
Use `./run_clang_tidy.sh` to run `clang-tidy` checks for the project.
27+
28+
This requires an existing `compile_commands.json`, which is automatically generated during build.
29+
It can also be generated by specifying the `compiledb` target to SCons, e.g. `./compile_debug.sh compiledb`.
30+
31+
32+
## Production Builds
33+
34+
The extension is built automatically using Github Actions for different platforms and targets.
35+
See [build.yml](.github/workflows/build.yml).
36+
37+
This workflow automatically runs on push and pull request events and outputs a zip that can be easily distributed and installed.

0 commit comments

Comments
 (0)