Commit graph

776 commits

Author SHA1 Message Date
Ali Chraghi
ade12bcd14 all: build: thisDir improvements (#570)
* build:all: thisDir improvements

more performant output, usage code reducement and compileError for wrong usage

* glfw: update deprecated code
2022-09-29 08:41:46 -07:00
Ali Chraghi
56b6222b2f all: build: organize build files and reduce unreachables (#567) 2022-09-25 10:02:51 -07:00
Ali Chraghi
3bb1357299 all: update zig version 2022-09-19 20:11:55 -07:00
Ali Chraghi
8733bddeec glfw: pass system sdk options through 2022-09-19 20:11:55 -07:00
Ali Chraghi
0ea0aae968 glfw: don't reset hints after window creation
Closes #201
2022-09-17 07:03:04 -07:00
Diego Arias
797328abe8 glfw: fix implicit function declaration error on clang15 2022-09-14 13:17:09 -07:00
Alexandre Chêne
e338416475 glfw: remove ineffective _ = variable assignment (#531) 2022-09-14 10:40:20 -07:00
locriacyber
eee270b000 all: remove ineffective _ = variable assignments (#530)
Lastest Zig complains about this, so they must removed to build.
2022-09-14 09:42:29 -07:00
Stephen Gutekanst
0b57c0fdf3 all: remove support for stage1
With almost all tests/examples working on all platforms now with the new compiler,
https://github.com/hexops/mach/issues/180, it's time to remove stage1 support.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-10 00:09:30 -07:00
Stephen Gutekanst
771275a553 glfw: update Linux system SDKs for mach/sysaudio
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-10 04:06:16 +00:00
Stephen Gutekanst
50ea28de41 all: update to latest Zig nightly version
Performed via:

```sh
VERSION=0.10.0-dev.3952+9e070b653 ./dev/update-zig.sh
```

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-10 02:16:05 +00:00
NewbLuck
3b15e261a4 all: update to use latest Zig master APIs (#521)
Co-authored-by: Scott Johnson <scott.johnson@furniturerow.com>
2022-09-10 02:07:30 +00:00
Stephen Gutekanst
73efe2f5cb glfw: workaround cImport self-hosted compiler bug ziglang/zig#12784
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-09-08 07:19:36 -07:00
Ali Chraghi
9755a609c4 all: revert cimport workaround 2022-09-07 21:24:47 -07:00
Ali Chraghi
03a5cfc252 glfw: renable getName test 2022-09-02 09:42:48 -07:00
Ali Chraghi
cc732dc7d7 glfw: fix cimport workaround errors for linux/windows 2022-09-02 09:42:48 -07:00
Ali Chraghi
b30ec07736 glfw:build: rename test steps 2022-08-29 05:59:52 -07:00
Ali Chraghi
edc2a9da7d build: don't install libs, fix glfw shared lib compilation,
standardilize `buildXXX` funcs
2022-08-28 10:45:09 -07:00
Stephen Gutekanst
f55bf99053 all: employ self-hosted @cImport hack only on Darwin targets
This is an poor approximation for the host OS running Darwin, which
is good enough for now. In practice this means macOS works but can't
cross-compile (until the cImport issue is fixed in Zig itself), but
Windows/Linux are unaffected and should be able to build natively and
cross-compile.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-27 11:19:57 -07:00
Ali Chraghi
15463ed05a glfw:build: undepend to X and OpenGL libs 2022-08-27 11:12:07 -07:00
Ali Chraghi
6de027bb40 build: replace depracted functions 2022-08-27 11:12:07 -07:00
Ali Chraghi
f556550501 build: fix memory leaks 2022-08-27 11:05:36 -07:00
Stephen Gutekanst
4d7cd69ebe all: update pull request template to reflect new libs/ dir
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-26 15:12:04 -07:00
Stephen Gutekanst
572d1144f1 all: ensure .git* files are standard across subprojects
Produced via:

```sh
zig run ./dev/ensure-standard-files.zig
```

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-23 08:36:51 -07:00
Stephen Gutekanst
c39b28f9b3 all: clarify self-hosted compiler TODOs
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 23:37:48 -07:00
Stephen Gutekanst
569dd4b8d9 glfw: pretranslate @cImport to workaround self-hosted compiler bug
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 12:03:17 -07:00
Stephen Gutekanst
eaf60a33d2 glfw: improve compatibility with self-hosted compiler
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-20 10:35:03 -07:00
Eric Joldasov
f4d9c0d171 glfw: fix instructions for Gyro in README.md
"--build-dep" has been recently renamed to "--build_dep"

Signed-off-by: Eric Joldasov <bratishkaerik@getgoogleoff.me>
2022-08-18 21:02:09 -07:00
Michal Ziulek
4296b2865b glfw: simplify build script, remove redundant allocs, improve -fno-stage1 support 2022-08-15 17:12:53 -07:00
Stephen Gutekanst
fda9465943 all: update to Zig 0.10.0-dev.3551+92568a009
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-12 14:45:21 -07:00
Stephen Gutekanst
6c5148b0a6 glfw: collapse/hide Gyro instructions by default to avoid confusion 2022-08-11 05:10:36 -07:00
Stephen Gutekanst
d2ad497232 glfw: update Vulkan headers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-07 22:05:00 -07:00
Stephen Gutekanst
27a90d81f5 glfw: update Linux system SDKs (update vulkan-headers to v1.3.224)
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-06 21:39:49 -07:00
Stephen Gutekanst
3184357f27 glfw: update Windows system SDK for Dawn compilation (reduce rpcndr_hack)
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-06 20:16:28 -07:00
Stephen Gutekanst
1dc7601e37 glfw: update Linux system SDKs for Vulkan v1.3 headers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-06 03:19:39 -07:00
Stephen Gutekanst
859ec51a2f glfw: update Linux system SDKs for newer Vulkan headers
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-06 02:40:08 -07:00
Stephen Gutekanst
1e04811040 glfw: fix -fno-stage1 thisDir invocations
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-08-05 22:24:57 -07:00
Casey Banner
8faba61460 glfw: add shared option which builds glfw into its own shared library (#442)
* Add shared option which builds glfw into it's own shared library
* glfw: separate shared test build step
* glfw: cleanup shared linking

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
Co-authored-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-31 13:56:13 -07:00
Stephen Gutekanst
e4b790e9f4 glfw: add assumeInitialized for external GLFW initialization
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-30 10:18:47 -07:00
Ali Chraghi
383d5f4d6e all: build: install tests exe 2022-07-25 11:21:37 -07:00
Ali Chraghi
b1f4b98a9f glfw: build: produce static library 2022-07-24 09:28:56 -07:00
Ali Chraghi
2e486e8594 CI: fix and fmt
install alsa lib on linux platform
2022-07-24 09:28:56 -07:00
Stephen Gutekanst
bf445c448b glfw: fix caching bug in system_sdk that prevents cross-compilation in some situations
Prior to this change, cross-compiling Mach to other OSes was not working due to a regression.
e.g. to windows:

```
zig build -Dtarget=x86_64-windows run-example-boids
LLD Link... error(link): DLL import library for -ldxguid not found
error: DllImportLibraryNotFound
error: example-boids...
```

The problem was that one build step may invoke `getSdkRoot` and the target might be for say macOS,
since it's building e.g. GLFW for macOS as the target of tests, and `getSdkRoot` would cache the
SDK root _forever_ as being the macOS SDK (in an attempt to avoid running the various git commands
needed to resolve the SDK root multiple times, which slows builds down.)

We instead need to cache the SDK root per step, because the target may not be the same.

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-22 19:30:59 -07:00
alichraghi
a7a7362848 glfw: use refAllDeclsRecursive to find mistakes 2022-07-20 18:55:59 -07:00
alichraghi
e0884da649 build: add mode paramater to testStep functions 2022-07-20 18:55:59 -07:00
alichraghi
26f5a7a490 build: add test-mach step to test src/ and test for testing all sub-projects 2022-07-19 09:25:55 -07:00
Stephen Gutekanst
0c9b414482 all: update to Zig 0.10.0-dev.3027+0e26c6149
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-17 09:20:48 -07:00
iddev5
240070b08d glfw: Use i32 for position in Window.setMonitor
This partially reverts ``d3feaed``
2022-07-09 15:07:55 -07:00
Jane Petrovna
62f0db6511 glfw: respect negative coordinates in window 2022-07-08 18:01:51 -07:00
Stephen Gutekanst
385f718127 glfw: update macOS system_sdk to include AudioToolbox
Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
2022-07-01 19:05:27 -07:00