summaryrefslogtreecommitdiff
path: root/pkg/cimgui
AgeCommit message (Collapse)Author
2025-10-03zig-15: build binary buildsMitchell Hashimoto
2025-09-21build: many more lazy dependencies, defer deps add unless neededMitchell Hashimoto
This makes more dependencies lazy. This has a practical effect of reducing the number of dependencies that need to be downloaded when running certain zig build steps. This is all limited because we're blocked on an upstream Zig issue: https://github.com/ziglang/zig/issues/21525 This prevents us from fully avoiding downloading many dependencies, but at least they're relatively small. One major improvement here is the usage of `lazyImport` for `zig-wayland` that prevents downloading `zig_wayland` unconditionally on all platforms. On macOS, we don't download this at all anymore. Another, weirder change is that all our transitive dependencies are now marked lazy (e.g. glslang's upstream source) even if the glslang build always requires it. This was necessary because without this, even if we simply referenced glslang in the root build.zig, it would force the source package to download unconditionally. This no longer happens.
2025-07-22build-system: Replace deprecated usages of root_source_file on addTests (#8031)Mitchell Hashimoto
Yet another low-hanging fruit
2025-07-23build-system: Replace deprecated usages of root_source_file on addTestsJayson Reis
2025-07-22build-system: Replace deprecated usages of addStaticLibrary with addLibrary ↵Jayson Reis
(#8029) Hi there, this is just a low-hanging fruit and it also prepares the way for the future 0.15, which removes addStaticLibrary. Please, let me know what to do on the `// TODO` comments.
2025-05-29build: use a libc txt file to point to correct Apple SDKMitchell Hashimoto
This fixes an issue where Ghostty would not build against the macOS 15.5 SDK. What was happening was that Zig was adding its embedded libc paths to the clang command line, which included old headers that were incompatible with the latest (macOS 15.5) SDK. Ghostty was adding the newer paths but they were being overridden by the embedded libc paths. The reason this was happening is because Zig was using its own logic to find the libc paths and this was colliding with the paths we were setting manually. To fix this, we now use a `libc.txt` file that explicitly tells Zig where to find libc, and we base this on our own SDK search logic.
2025-05-07core: fixup callconv(.C) -> callconv(.c)Jeffrey C. Ollie
https://ziglang.org/download/0.14.0/release-notes.html#Calling-Convention-Enhancements-and-setAlignStack-Replaced
2025-03-14build: mark most dependencies as lazyMitchell Hashimoto
Lazy dependencies are only fetched if the build script would actually reach a usage of that dependency at runtime (when the `lazyDependency` function is called). This can save a lot of network traffic, disk uage, and time because we don't have to fetch and build dependencies that we don't actually need. Prior to this commit, Ghostty fetched almost everything for all platforms and configurations all the time. This commit reverses that to fetching almost nothing until it's actually needed. There are very little downsides to doing this[1]. One downside is `zig build --fetch` doesn't fetch lazy dependencies, but we don't rely on this command for packaging and suggest using our custom shell script that downloads a cached list of URLs (`build.zig.zon.txt`). This commit doesn't cover 100% of dependencies, since some provide no benefit to make lazy while the complexity to make them lazy is higher (in code style typically). Conversely, some simple dependencies are marked lazy even if they're almost always needed if they don't introduce any real complexity to the code, because there is very little downside to do so. [1]: https://ziggit.dev/t/lazy-dependencies-best-dependencies/5509/5
2025-03-12update all packages to new hash for cachingMitchell Hashimoto
2025-03-11Zig 0.14Mitchell Hashimoto
2025-02-14build: mirror most of our direct dependenciesMitchell Hashimoto
This adds a new script `update-mirror.sh` which generates the proper blob format for R2 (or any blob storage) to mirror all of our dependencies. It doesn't automate updating build.zig.zon but on an ongoing basis this should be easy to do manually, and we can strive to automate it in the future. I omitted iTerm2 color themes because we auto-update that via CI and updating all of the machinery to send it to our mirror and so on is a pain. Additionally, this doesn't mirror transitive dependencies because Zig doesn't have a way to fetch those from a mirror instead (unless you pre-generate a full cache like packagers but that's not practical for day to day development). It's hugely beneficial just to get most of our dependencies mirrored.
2025-01-03Fix cimgui version string to match pkg/cimgui/vendor/ and the upstream versionazhn
2024-10-30Fix linking freetype and glslangNyaa97
2024-10-24build: use Zig system packaging optionsMitchell Hashimoto
This allows dynamically linking against system libraries, which is particularly useful for packaging.
2024-08-16pkg: yeet more usingnsMitchell Hashimoto
2024-06-24begin 0.13 update process -- very brokenMitchell Hashimoto
2024-05-10update Dear Imgui to 1.90.6Mitchell Hashimoto
2024-04-17working on more zig breaking changesMitchell Hashimoto
2024-01-13build: build produces a broken object file for iOSMitchell Hashimoto
This gets `zig build -Dtarget=aarch64-ios` working. By "working" I mean it produces an object file without compiler errors. However, the object file certainly isn't useful since it uses a number of features that will not work in the iOS sandbox. This is just an experiment more than anything to see how hard it would be to get libghostty working within iOS to render a terminal. Note iOS doesn't support ptys so this wouldn't be a true on-device terminal. The challenge right now is to just get a terminal rendering (not usable).
2024-01-09pkg/apple-sdk: detect apple sdk based on targetMitchell Hashimoto
2024-01-09pkg/apple-sdk: always require a moduleMitchell Hashimoto
2024-01-09build: use Xcode for the macOS SDKMitchell Hashimoto
2024-01-07Maybe this will help macosKrzysztof Wolicki
2024-01-07Add include paths to more modules in pkg/Krzysztof Wolicki
2024-01-03WIP: Update to new build module API after Zig PR #18160Krzysztof Wolicki
Temporarily change dependency sources to forks until they update
2023-10-24inspector is scaled to native dpiMitchell Hashimoto
2023-10-24pkg/cimgui: use freetype for font renderingMitchell Hashimoto
2023-10-24pkg/cimgui: requires libcppMitchell Hashimoto
2023-10-24pkg/cimgui: add osx backendMitchell Hashimoto
2023-10-24pkg/cimgui: add metal backendMitchell Hashimoto
2023-10-24apprt/gtk: can render imguiMitchell Hashimoto
2023-10-24build: add cimgui to buildMitchell Hashimoto
2023-10-24pkg/cimguiMitchell Hashimoto