17 Commits

Author SHA1 Message Date
AnyOldName3
fe97e3c888 Move brew repair and update to architecture-independent script
It installs things now, so these commands are useful.
2025-09-12 18:09:12 +01:00
AnyOldName3
ff60b741a7 Move architecture-independent tool installation to common script 2025-09-06 00:51:52 +01:00
AnyOldName3
c70a7cd15b Eliminate single-line ccache scripts
They used to be necessary because they selected CMake of the same architecture as the build target, but now we use native ccache, they don't do anything meaningful.

Make things consistent with other platforms and just call ccache directly in the CI script.
2025-09-05 01:01:41 +01:00
AnyOldName3
a4be773e9c Native ccache won't work if we insist on an architecture 2025-09-05 00:56:36 +01:00
AnyOldName3
3bf68d44b7 Try using native CMake and CCache
In principle, CMake should be able to cross-compile just fine and CCache shouldn't care.
Maybe homebrew meddles with the default configuration and this will break things, though.
We shall see.
2025-09-05 00:55:52 +01:00
AnyOldName3
f155b0199e Undo part of !4759
https://gitlab.com/OpenMW/openmw/-/merge_requests/4759#note_2606465930 was marked as resolved without really being resolved, so bypassed normal review and was merged prematurely.

We tell developers to run these scripts on their machines, so it's rude to install things we don't have to over the top of an existing installation.
If the existing installation was via brew via the default sources, then it's clever enough not to break things, but if it's using custom sources or the install is outside of brew, it'll either break or overwrite what's there.

The three tools we've historically checked before overwriting all have an upstream MacOS distribution that isn't through brew, so it's decently likely that they exist, and we've never agreed to drop support for them.

I went a little further than the original code:
* I added a check before overwriting brew itself.
  I don't know whether the install script would notice this anyway.
* I added a check to ensure it's specifically Qt 6.x that's already installed as we dropped support for Qt 5.
* I added the checks back to both scripts even though !4759 only removed them from one.
  There only used to be one script, and when it was split, the checks only made it to one copy.

I could have gone further by adding checks for other tools before we install them, but we didn't have these in the past and I couldn't be bothered.

Try ARCHPREFERENCE environment variable

Go back to using subshell

ARCHPREFERENCE won't retroactively relaunch the current shell.

Also use /usr/local/bin/brew as the x86_64 version we just installed isn't added to the path by default.

Fresh shell for brew installer?

escape things better

This commit message was very nearly just emoji or a rant about sh-compatible shells.

what is going on?

Nested quotes?
2025-09-05 00:55:52 +01:00
Sarah Sunday
68d0dff890 [CI] Check for cmake for arm, move s3cmd out of arch specific flow 2025-09-02 19:54:38 -05:00
Sarah Sunday
5dfb4994b0 [CI] Rename/fix mac ccache file 2025-09-02 19:54:38 -05:00
psi29a
ab8e17196f Merge branch 'mac-brew-tweaks' into 'master'
[CI] Mac - Brew cleanup/simplify

See merge request OpenMW/openmw!4759
2025-07-16 08:44:31 +00:00
AnyOldName3
1331318002 Add another v 2025-07-07 16:28:52 +01:00
Sarah Sunday
6a9b2d3302 [CI] Brew cleanup/simplify 2025-07-06 17:28:23 -05:00
AnyOldName3
89d6f59388 Use verbose status for ccache so we can see what caused hit failures 2025-07-06 15:58:12 +01:00
Sarah Sunday
50e3c9d500 [CI] Ccache flow tweak, use forked commands, cd build 2025-06-22 10:35:16 -05:00
Sarah Sunday
adc4698c44 [CI] Revert ccache script forking, rename try, cleanup 2025-06-21 21:19:07 -05:00
Sarah Sunday
faa9af4428 [CI] Overhaul mac CI flow 2025-06-21 19:54:42 -05:00
Sarah Sunday
12f3596220 [CI] Specify intel brew location 2025-06-21 14:19:43 -05:00
Sarah Sunday
139bde6420 [CI] Fork before install mac arm/intel steps, prefix with arch command 2025-06-21 13:53:40 -05:00