aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitmodules2
-rw-r--r--BUILD.md52
-rw-r--r--flake.lock10
-rw-r--r--flake.nix2
-rw-r--r--program_info/CMakeLists.txt2
5 files changed, 58 insertions, 10 deletions
diff --git a/.gitmodules b/.gitmodules
index d620faab..8d034354 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -9,4 +9,4 @@
url = https://github.com/gulrak/filesystem
[submodule "libraries/libnbtplusplus"]
path = libraries/libnbtplusplus
- url = https://github.com/PlaceholderMC/libnbtplusplus.git
+ url = https://github.com/PrismLauncher/libnbtplusplus.git
diff --git a/BUILD.md b/BUILD.md
index 4d9fb76f..2443ac56 100644
--- a/BUILD.md
+++ b/BUILD.md
@@ -1,5 +1,53 @@
# Build Instructions
-Build instructions are available on [the website](https://prismlauncher.org/wiki/development/build-instructions/).
+Full build instructions will be available on [the website](https://prismlauncher.org/wiki/development/build-instructions/).
+
+If you would like to contribute or fix an issue with the Build instructions you will be able to do so [here](https://github.com/PrismLauncher/website/blob/master/src/wiki/development/build-instructions.md).
+
+## Getting the source
+
+Clone the source code using git, and grab all the submodules. This is generic for all platforms you want to build on.
+```
+git clone --recursive https://github.com/PrismLauncher/PrismLauncher
+cd PrismLauncher
+```
+
+## Linux
+
+This guide will mostly mention dependant packages by their Debian naming and commands are done by a user in the sudoers file.
+### Dependencies
+
+- A C++ compiler capable of building C++17 code (can be found in the package `build-essential`).
+- Qt Development tools 5.12 or newer (on Debian 11 or Debian-based distributions, `qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5core5a libqt5network5 libqt5gui5`).
+- `cmake` 3.15 or newer.
+- `extra-cmake-modules`.
+- zlib (`zlib1g-dev` on Debian 11 or Debian-based distributions).
+- Java Development Kit (Java JDK) (`openjdk-17-jdk` on Debian 11 or Debian-based distributions).
+- Mesa GL headers (`libgl1-mesa-dev` on Debian 11 or Debian-based distributions).
+- (Optional) `scdoc` to generate man pages.
+
+In conclusion, to check if all you need is installed (including optional):
+
+```
+sudo apt install build-essential qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5core5a libqt5network5 libqt5gui5 cmake extra-cmake-modules zlib1g-dev openjdk-17-jdk libgl1-mesa-dev scdoc
+```
+
+### Compiling
+#### Building and installing on the system
+This is usually the suggested way to build the client.
+
+```
+cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="/usr" -DENABLE_LTO=ON
+cmake --build build -j$(nproc)
+sudo cmake --install build
+```
+
+#### Building a portable binary
+
+```
+cmake -S . -B build -DCMAKE_INSTALL_PREFIX=install
+cmake --build build -j$(nproc)
+cmake --install build
+cmake --install build --component portable
+```
-If you would like to contribute or fix an issue with the Build instructions you can do so [here](https://github.com/PlaceholderMC/website/blob/master/src/wiki/development/build-instructions.md).
diff --git a/flake.lock b/flake.lock
index 8d04df4b..7c0bb2f8 100644
--- a/flake.lock
+++ b/flake.lock
@@ -21,13 +21,13 @@
"locked": {
"lastModified": 1650031308,
"narHash": "sha256-TvVOjkUobYJD9itQYueELJX3wmecvEdCbJ0FinW2mL4=",
- "owner": "PlaceholderMC",
+ "owner": "PrismLauncher",
"repo": "libnbtplusplus",
"rev": "2203af7eeb48c45398139b583615134efd8d407f",
"type": "github"
},
"original": {
- "owner": "PlaceholderMC",
+ "owner": "PrismLauncher",
"repo": "libnbtplusplus",
"type": "github"
}
@@ -59,11 +59,11 @@
"tomlplusplus": {
"flake": false,
"locked": {
- "lastModified": 1666026506,
- "narHash": "sha256-YE0u5M9mfGPNTakFrNTBt4BSvJUr2gkJN41COnPMvh8=",
+ "lastModified": 1666091090,
+ "narHash": "sha256-djpMCFPvkJcfynV8WnsYdtwLq+J7jpV1iM4C6TojiyM=",
"owner": "marzer",
"repo": "tomlplusplus",
- "rev": "c8780a5b8e8d2f8ff1fd747a3a89b7becebfdee9",
+ "rev": "1e4a3833d013aee08f58c5b31c69f709afc69f73",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index c6207999..d4a25338 100644
--- a/flake.nix
+++ b/flake.nix
@@ -4,7 +4,7 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-compat = { url = "github:edolstra/flake-compat"; flake = false; };
- libnbtplusplus = { url = "github:PlaceholderMC/libnbtplusplus"; flake = false; };
+ libnbtplusplus = { url = "github:PrismLauncher/libnbtplusplus"; flake = false; };
tomlplusplus = { url = "github:marzer/tomlplusplus"; flake = false; };
};
diff --git a/program_info/CMakeLists.txt b/program_info/CMakeLists.txt
index 4d7c224d..e46f63a3 100644
--- a/program_info/CMakeLists.txt
+++ b/program_info/CMakeLists.txt
@@ -17,7 +17,7 @@ set(Launcher_Name "${Launcher_CommonName}" PARENT_SCOPE)
set(Launcher_DisplayName "Prism Launcher" PARENT_SCOPE)
set(Launcher_UserAgent "${Launcher_CommonName}/${Launcher_VERSION_NAME}" PARENT_SCOPE)
set(Launcher_ConfigFile "prismlauncher.cfg" PARENT_SCOPE)
-set(Launcher_Git "https://github.com/PlaceholderMC/PrismLauncher" PARENT_SCOPE)
+set(Launcher_Git "https://github.com/PrismLauncher/PrismLauncher" PARENT_SCOPE)
set(Launcher_DesktopFileName "org.prismlauncher.PrismLauncher.desktop" PARENT_SCOPE)
set(Launcher_Desktop "program_info/org.prismlauncher.PrismLauncher.desktop" PARENT_SCOPE)