From ba269b6a6373c274873f3ca3eae1547a205c0961 Mon Sep 17 00:00:00 2001 From: diamante0018 Date: Sat, 8 Feb 2025 18:27:35 +0100 Subject: [PATCH] build: add back x64 macos build --- .github/workflows/build.yml | 1 + README.md | 26 ++++++++++++++++++++++++-- deps/premake/libtomcrypt.lua | 14 ++++++-------- premake5.lua | 5 +++++ 4 files changed, 36 insertions(+), 10 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7e01504..1431fdd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -139,6 +139,7 @@ jobs: - debug - release arch: + - x64 - arm64 steps: - name: Check out files diff --git a/README.md b/README.md index 6c4aeca..73731e0 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,29 @@ Run using [Docker][docker-link] docker run -p 20810:20810/udp -e AW_STATS_LOCATION= alterware/master-server:latest ``` +or run as a systemd service + +``` +[Unit] +Description=AlterWare Master Server +After=network.target + +[Service] +Type=simple +ExecStart=/alterware-master +WorkingDirectory= +Environment="AW_STATS_LOCATION=/var/www//html/stats.json" +StandardOutput=null +Restart=on-failure +RestartSec=10 +KillMode=process +User= +Group= + +[Install] +WantedBy=multi-user.target +``` + ## Build - Install [Premake5][premake5-link] and add it to your system PATH - Clone this repository using [Git][git-link] @@ -23,10 +46,9 @@ Requirements for Unix systems: - Dependencies: Ensure the LLVM C++ Standard library is installed - Alternative compilers: If you opt for a different compiler such as GCC, use the [Mold][mold-link] linker - Customization: Modifications to the Premake5.lua script may be required -- Platform support: Details regarding supported platforms are available in [build.yml][build-link] +- Platform support: Details regarding supported platforms are available in [build.yml](.github/workflows/build.yml). Linux ARM64 should be supported out of the box even if it's not present in the CI scripts [docker-link]: https://www.docker.com [premake5-link]: https://premake.github.io [git-link]: https://git-scm.com [mold-link]: https://github.com/rui314/mold -[build-link]: https://github.com/alterware/master-server/blob/master/.github/workflows/build.yml diff --git a/deps/premake/libtomcrypt.lua b/deps/premake/libtomcrypt.lua index 32ac215..14c4428 100644 --- a/deps/premake/libtomcrypt.lua +++ b/deps/premake/libtomcrypt.lua @@ -56,15 +56,13 @@ function libtomcrypt.project() "_USRDLL", } - if os.istarget("darwin") then - filter "platforms:x64" - buildoptions "-march=native" - filter {} + filter { "system:macosx", "platforms:arm64" } + buildoptions "-mcpu=apple-m1" + filter {} - filter "platforms:arm64" - buildoptions "-mcpu=apple-m1" - filter {} - end + filter { "system:macosx", "platforms:x64" } + buildoptions "-mcpu=x86-64" + filter {} warnings "Off" kind "StaticLib" diff --git a/premake5.lua b/premake5.lua index 8be85c4..2f02655 100644 --- a/premake5.lua +++ b/premake5.lua @@ -85,6 +85,11 @@ if os.istarget("linux") then filter {} end +filter { "system:macosx", "platforms:x64" } + buildoptions "-arch x86_64" + linkoptions "-arch x86_64" +filter {} + filter { "system:macosx", "platforms:arm64" } buildoptions "-arch arm64" linkoptions "-arch arm64"