Skip to content

Commit a1873f3

Browse files
committed
CI: split amd64 and arm64 builds
So we can test both platforms in CI
1 parent 636bcaa commit a1873f3

File tree

2 files changed

+63
-15
lines changed

2 files changed

+63
-15
lines changed

.github/workflows/ci.yml

Lines changed: 53 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -408,8 +408,55 @@ jobs:
408408
name: fastfetch-musl-amd64
409409
path: ./fastfetch-*.*
410410

411-
macos-universal:
412-
name: macOS-universal
411+
macos-amd64:
412+
name: macOS-amd64
413+
runs-on: macos-13
414+
permissions:
415+
security-events: write
416+
contents: read
417+
steps:
418+
- name: checkout repository
419+
uses: actions/checkout@v4
420+
421+
- name: uname -a
422+
run: uname -a
423+
424+
- name: install required packages
425+
run: |
426+
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite vulkan-loader vulkan-headers molten-vk imagemagick chafa
427+
428+
- name: configure project
429+
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
430+
431+
- name: build project
432+
run: cmake --build . --target package --verbose -j4
433+
434+
- name: list features
435+
run: ./fastfetch --list-features
436+
437+
- name: run fastfetch
438+
run: time ./fastfetch -c presets/ci.jsonc --stat false
439+
440+
- name: run fastfetch --format json
441+
run: time ./fastfetch -c presets/ci.jsonc --format json
442+
443+
- name: run flashfetch
444+
run: time ./flashfetch
445+
446+
- name: print dependencies
447+
run: otool -L fastfetch
448+
449+
- name: run tests
450+
run: ctest --output-on-failure
451+
452+
- name: upload artifacts
453+
uses: actions/upload-artifact@v4
454+
with:
455+
name: fastfetch-macos-amd64
456+
path: ./fastfetch-*.*
457+
458+
macos-aarch64:
459+
name: macOS-aarch64
413460
runs-on: macos-latest
414461
permissions:
415462
security-events: write
@@ -426,7 +473,7 @@ jobs:
426473
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 brew install --overwrite vulkan-loader vulkan-headers molten-vk imagemagick chafa
427474
428475
- name: configure project
429-
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' .
476+
run: cmake -DSET_TWEAK=Off -DBUILD_TESTS=On .
430477

431478
- name: build project
432479
run: cmake --build . --target package --verbose -j4
@@ -452,7 +499,7 @@ jobs:
452499
- name: upload artifacts
453500
uses: actions/upload-artifact@v4
454501
with:
455-
name: fastfetch-macos-universal
502+
name: fastfetch-macos-aarch64
456503
path: ./fastfetch-*.*
457504

458505
sunos-amd64:
@@ -808,7 +855,8 @@ jobs:
808855
- linux-ppc64le
809856
- linux-s390x
810857
- musl-amd64
811-
- macos-universal
858+
- macos-amd64
859+
- macos-aarch64
812860
- freebsd-amd64
813861
- openbsd-amd64
814862
- netbsd-amd64

CMakeLists.txt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1924,17 +1924,17 @@ install(
19241924
##################
19251925

19261926
set(CPACK_GENERATOR "TGZ;ZIP")
1927+
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
1928+
set(CMAKE_SYSTEM_PROCESSOR "amd64")
1929+
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
1930+
set(CMAKE_SYSTEM_PROCESSOR "aarch64")
1931+
endif()
19271932
if(APPLE)
1928-
string(TOLOWER "${CMAKE_PROJECT_NAME}-macos-universal" CPACK_PACKAGE_FILE_NAME)
1929-
else() # We don't use this in Windows
1930-
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
1931-
set(CMAKE_SYSTEM_PROCESSOR "amd64")
1932-
endif()
1933-
if(IS_MUSL)
1934-
string(TOLOWER "${CMAKE_PROJECT_NAME}-musl-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1935-
else()
1936-
string(TOLOWER "${CMAKE_PROJECT_NAME}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1937-
endif()
1933+
string(TOLOWER "${CMAKE_PROJECT_NAME}-macos-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME) # use macos instead of darwin
1934+
elseif(IS_MUSL)
1935+
string(TOLOWER "${CMAKE_PROJECT_NAME}-musl-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
1936+
else()
1937+
string(TOLOWER "${CMAKE_PROJECT_NAME}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}" CPACK_PACKAGE_FILE_NAME)
19381938
endif()
19391939

19401940
if(LINUX)

0 commit comments

Comments
 (0)