diff options
author | Ben Wiederhake <BenWiederhake.GitHub@gmx.de> | 2023-01-05 12:10:23 +0100 |
---|---|---|
committer | Jelle Raaijmakers <jelle@gmta.nl> | 2023-01-05 13:20:54 +0100 |
commit | 6c850889525867949403c06c8b844ef70143a6f3 (patch) | |
tree | 79ac7b8f5bdf75628672d6679109c841664705de | |
parent | 91db49f7b330b632e6b73e7113c9c62e8dfbaaf8 (diff) | |
download | serenity-6c850889525867949403c06c8b844ef70143a6f3.zip |
Documentation: Update QtCreator setup instructions
The biggest difference is that -m32 is no longer important, and in fact
breaks every 64-bit setup.
Also, defining ENABLE_UNICODE_DATA, ENABLE_COMPILETIME_FORMAT_CHECK, and
__SSE__ makes some code "visible" in the #ifdef sense, which improves
syntax highlighting.
-rw-r--r-- | Documentation/QtCreatorConfiguration.md | 46 |
1 files changed, 28 insertions, 18 deletions
diff --git a/Documentation/QtCreatorConfiguration.md b/Documentation/QtCreatorConfiguration.md index fd6b75568e..bd0f084147 100644 --- a/Documentation/QtCreatorConfiguration.md +++ b/Documentation/QtCreatorConfiguration.md @@ -13,24 +13,34 @@ First, make sure you have a working toolchain and can build and run SerenityOS. * Set `Add to version control` to `<None>`. Click Finish. * In your shell, go to your SerenityOS project directory, and invoke the `Meta/refresh-serenity-qtcreator.sh` script to regenerate the `serenity.files` file. You will also have to do this every time you delete or add a new file to the project. * Edit the `serenity.config` file (In Qt Creator, hit ^K or CMD+K on a Mac to open the search dialog, type the name of the file and hit return to open it) -* Add the following `#define`s to the file: `SANITIZE_PTRS`, `__serenity__` and `KERNEL`. `__serenity__` define is needed to recognize functions like `unveil`. Depending on what you are working on, you need to have that last define commented out. If you're planning on working in the userland, comment out `#define KERNEL`. If you're working on the Kernel, then uncomment `#define KERNEL`. -* Edit the `serenity.cxxflags` file to say `-std=c++2a -m32` +* Add the following `#define`s to the file: + ``` + //#define KERNEL + + #define ENABLE_UNICODE_DATA 1 + //#define ENABLE_COMPILETIME_FORMAT_CHECK + + #define __serenity__ + #define SANITIZE_PTRS 1 + #define __SSE__ + ``` + If you're working on the Kernel, just uncomment `#define KERNEL`. +* Edit the `serenity.cxxflags` file to say `-std=c++20 -fsigned-char -fconcepts -fno-exceptions -fno-semantic-interposition -fPIC` * Edit the `serenity.includes` file to list the following lines: - -``` -. -Userland/ -Userland/Services/ -Userland/Libraries/ -Userland/Libraries/LibC/ -Userland/Libraries/LibSystem/ -Toolchain/Local/x86_64/x86_64-pc-serenity/include/c++/12.1.0 -Build/x86_64/ -Build/x86_64/Userland/ -Build/x86_64/Userland/Services/ -Build/x86_64/Userland/Libraries/ -AK/ -``` + ``` + ./ + Userland/ + Userland/Libraries/ + Userland/Libraries/LibC/ + Userland/Libraries/LibSystem/ + Userland/Services/ + Toolchain/Local/x86_64/x86_64-pc-serenity/include/c++/12.2.0 + Build/x86_64/ + Build/x86_64/Userland/ + Build/x86_64/Userland/Libraries/ + Build/x86_64/Userland/Services/ + AK/ + ``` Finally, search in the options for "BOM" (Text Editor > Behavior > File Encodings > UTF-8 BOM), and switch to "Always delete". @@ -72,7 +82,7 @@ In order to so, create a new file anywhere, for example `license-template.creato ``` /* - * Copyright (c) 2021, the SerenityOS developers. + * Copyright (c) 2023, the SerenityOS developers. * * SPDX-License-Identifier: BSD-2-Clause */ |