This repository contains the TrenchBroom source code set up for Docker. TrenchBroom is a level editor for multiple games.
Docker is used here to simplify building the application. With Docker, developers can compile and build the application without manually installing all dependencies.
β οΈ Disclaimer: This setup is currently only compatible with Linux environments. Support for Windows and macOS is planned for the near future.
The project utilizes a TrenchBroom
directory, which is a Git clone of the TrenchBroom source. When the build.sh
script is run, it compiles the content of the TrenchBroom
directory.
.
βββ TrenchBroom/
β βββ build/
β βββ <environment>/
β βββ <type>/
β βββ <target>/
β βββ ...
βββ .gitignore
βββ build.sh
βββ Dockerfile.linux
βββ LICENSE
βββ README.md
Ensure you have Docker Engine installed and operational. An alternative user-friendly interface for managing Docker elements is Docker Desktop.
β οΈ Technical Note: For an optimized building experience, it may be necessary to adjust your Docker resource allocations, including CPU, Memory, and Disk Space. Increasing these limits in Docker settings can significantly enhance performance, especially for resource-intensive tasks, and avoid failing building processes.
-
Clone this repository:
git clone https://github.com/jonathanlinat/dockerized-trenchbroom.git
-
Navigate to the cloned directory:
cd dockerized-trenchbroom
-
Clone the official TrenchBroom source code or a fork into this project:
git clone --recursive https://github.com/TrenchBroom/TrenchBroom.git
Note: To clone a specific branch, append
-b <branchname>
to the command.After this step, you should have a directory named
TrenchBroom
, as shown in the project structure above. -
Compile the application:
Open your terminal and execute the following, optionally replacing:
<environment>
withlinux
<type>
withDebug
or your desired type (likeRelease
,RelWithDebInfo
orMinSizeRel
)<target>
withTrenchBroom
or your desired target (likeGenerateManual
)
./build.sh <environment> <type> <target>
This will initiate the Docker-based build process. The resulting binary will be placed in
TrenchBroom/build/<environment>/<type>/<target>/
.
With these steps, you can easily compile TrenchBroom using Docker, ensuring a consistent and streamlined build process.
Dockerized π TrenchBroom is MIT licensed.