diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 196f99525b..e45abf8242 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -52,11 +52,12 @@ jobs: if: contains(matrix.os, 'macOS') run: | brew update || true - brew install pkg-config sdl2 python3 ninja || true + brew install pkg-config sdl2 python3 ninja gdb || true # --overwrite for: Target /usr/local/bin/2to3 already exists. brew link --overwrite python@3.12 brew upgrade freetype sudo rm -rf /Library/Developer/CommandLineTools + brew install gdb - name: Build in debug mode env: ${{ matrix.env }} @@ -122,7 +123,7 @@ jobs: uses: actions/checkout@v2 with: repository: matricks/bam - ref: 8cd08744c37666830d439ab54016c9d228c63b68 + ref: 657d1a0b47d1210b6d10bea12fdd28938f175d25 path: ./bam - name: Prepare Linux @@ -147,6 +148,13 @@ jobs: cd bam ./make_win64_msvc.bat + - name: Build in debug mode (macos gdb) + if: contains(matrix.os, 'macOS') + run: | + otool -L ./bam/bam + sudo dtruss ./bam/bam conf=debug all + # gdb -ex='set confirm off' -ex='set pagination off' -ex=run -ex=bt -ex=quit ./bam/bam conf=debug all + - name: Build in debug mode run: ./bam/bam conf=debug all - name: Test debug diff --git a/bam.lua b/bam.lua index 393612041f..886f279eff 100644 --- a/bam.lua +++ b/bam.lua @@ -121,8 +121,11 @@ function GenerateMacOSSettings(settings, conf, arch, compiler) elseif arch == "ppc64" then settings.cc.flags:Add("-arch ppc64") settings.link.flags:Add("-arch ppc64") + elseif arch == "arm64" then + settings.cc.flags:Add("-arch arm64") + settings.link.flags:Add("-arch arm64") else - print("Unknown Architecture '" .. arch .. "'. Supported: x86, x86_64, ppc, ppc64") + print("Unknown Architecture '" .. arch .. "'. Supported: x86, x86_64, ppc, ppc64, arm64") os.exit(1) end @@ -185,8 +188,10 @@ function GenerateLinuxSettings(settings, conf, arch, compiler) settings.link.flags:Add("-m64") elseif arch == "armv7l" then -- arm 32 bit + elseif arch == "arm64" then + -- arm 64 bit else - print("Unknown Architecture '" .. arch .. "'. Supported: x86, x86_64") + print("Unknown Architecture '" .. arch .. "'. Supported: x86, x86_64, armv7l, arm64") os.exit(1) end settings.link.libs:Add("pthread") @@ -504,7 +509,7 @@ if ScriptArgs['arch'] then else if arch == "ia32" then archs = {"x86"} - elseif arch == "ia64" or arch == "amd64" or arch == "arm64" then + elseif arch == "ia64" or arch == "amd64" then archs = {"x86_64"} else archs = {arch}