diff --git a/build-natives/build-linux-arm64.sh b/build-natives/build-linux-arm64.sh new file mode 100755 index 0000000..049022c --- /dev/null +++ b/build-natives/build-linux-arm64.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +premake5 --file=build-linux.lua gmake +make clean config=release_arm64 +make config=release_arm64 +mv bin/arm64/release/libsteamworks4j.so ../java-wrapper/src/main/resources/libsteamworks4j.so +mv bin/arm64/release/libsteamworks4j-server.so ../server/src/main/resources/libsteamworks4j-server.so +mv bin/arm64/release/libsteamworks4j-encryptedappticket.so ../server/src/main/resources/libsteamworks4j-encryptedappticket.so diff --git a/build-natives/build-linux-x86_64.sh b/build-natives/build-linux-x86_64.sh new file mode 100755 index 0000000..3ca8956 --- /dev/null +++ b/build-natives/build-linux-x86_64.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +premake5 --file=build-linux.lua gmake +make clean config=release_x64 +make config=release_x64 +mv bin/x64/release/libsteamworks4j.so ../java-wrapper/src/main/resources/libsteamworks4j.so +mv bin/x64/release/libsteamworks4j-server.so ../server/src/main/resources/libsteamworks4j-server.so +mv bin/x64/release/libsteamworks4j-encryptedappticket.so ../server/src/main/resources/libsteamworks4j-encryptedappticket.so diff --git a/build-natives/build-linux.lua b/build-natives/build-linux.lua index e1ed728..0558f8d 100644 --- a/build-natives/build-linux.lua +++ b/build-natives/build-linux.lua @@ -1,6 +1,6 @@ solution "steamworks4j" configurations { "release" } - platforms { "x64" } + platforms { "x64", "arm64" } buildoptions { "-std=c++11", @@ -18,10 +18,19 @@ solution "steamworks4j" "LINUX" } - flags { - "Optimize" + steam_arch = { + x86_64 = "linux64", + ARM64 = "linuxarm64" } + filter "platforms:x64" + architecture "x86_64" + filter "platforms:arm64" + architecture "ARM64" + filter {} + + libdirs { "../sdk/redistributable_bin/%{steam_arch[cfg.architecture]}" } + project "steamworks4j" kind "SharedLib" @@ -35,12 +44,9 @@ solution "steamworks4j" "../java-wrapper/src/main/native", } - libdirs { - "../sdk/redistributable_bin/linux64" - } - links { - "steam_api" - } + links { + "steam_api" + } project "steamworks4j-server" @@ -59,12 +65,9 @@ solution "steamworks4j" "../server/src/main/native", } - libdirs { - "../sdk/redistributable_bin/linux64" - } - links { - "steam_api" - } + links { + "steam_api" + } project "steamworks4j-encryptedappticket" @@ -79,9 +82,8 @@ solution "steamworks4j" "../server/src/main/native", } - libdirs { - "../sdk/public/steam/lib/linux64" - } - links { - "sdkencryptedappticket" - } + libdirs { "../sdk/public/steam/lib/%{steam_arch[cfg.architecture]}" } + + links { + "sdkencryptedappticket" + }