diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-02 18:40:52 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-02 18:40:52 +0100 |
| commit | 58ee924b67316928c24a7376331e4ba79a17f92c (patch) | |
| tree | 4686506eaee42b840a53a8c171aed84bd3ed1470 /doc | |
| parent | f76b2bad971f26810e98754542f8d0ef6ac77dd2 (diff) | |
docs: Merge Xcode build instructions and GPU performance capture details into BUILD.md
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/BUILD.md | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/doc/BUILD.md b/doc/BUILD.md index 3a581b1..e78aa91 100644 --- a/doc/BUILD.md +++ b/doc/BUILD.md @@ -27,3 +27,56 @@ Requires `mingw-w64` and `wine-stable` (for testing). ```bash ./scripts/run_win.sh ``` + +# Building the Project with Xcode + +This document provides instructions for building the 64k Demo project using Xcode on macOS. + +## Prerequisites + +- **Xcode:** Ensure you have Xcode installed. You can download it from the Mac App Store. +- **CMake:** This project uses CMake as its build system. Ensure CMake is installed on your system. + +## Build Steps + +1. **Open Terminal:** Navigate to the root directory of the project (`/Users/skal/demo`). + +2. **Create Build Directory:** It is recommended to build out-of-source. Create a build directory: + ```bash + mkdir build + cd build + ``` + +3. **Configure with CMake for Xcode:** Generate the Xcode project files using CMake. For Xcode, you typically specify the generator as `Xcode`. + ```bash + cmake .. -G "Xcode" + ``` + This command will configure the project and create an `.xcodeproj` file within the `build` directory. + +4. **Open Xcode Project:** Open the generated `.xcodeproj` file in Xcode: + ```bash + open YourProjectName.xcodeproj + ``` + (Replace `YourProjectName.xcodeproj` with the actual name of the generated project file, usually `demo.xcodeproj` or similar). + +5. **Build and Run in Xcode:** + * Select your desired target (e.g., `demo64k`, `test_3d_render`). + * Choose a build scheme (e.g., `Debug` or `Release`) + * Click the "Run" button (or press `Cmd+R`) to build and launch the application. + +## GPU Performance Capture (Future Task) + +To enable future GPU performance analysis, a conditional compilation macro `ENABLE_GPU_PERF_CAPTURE` can be defined. This can be controlled via CMake build types or specific flags when configuring the project: + +```bash +# Example of defining the macro via CMake (add to CMakeLists.txt) +# if (MY_GPU_PERF_BUILD) +# target_compile_definitions(demo64k PRIVATE ENABLE_GPU_PERF_CAPTURE=1) +# endif +``` + +This macro can then be used within the code (e.g., in `gpu.h` or `platform.h`) to conditionally compile performance monitoring or capture code. + +## Shader Performance Analysis Task + +For detailed shader performance analysis on macOS, **Xcode's Metal debugger** is the recommended tool. A task has been added to `TODO.md` to integrate this into our workflow for future optimization efforts. |
