mirror of
				https://github.com/ggml-org/llama.cpp.git
				synced 2025-10-30 08:42:00 +00:00 
			
		
		
		
	ci: simplify cmake build commands (#11548)
This commit is contained in:
		
							
								
								
									
										86
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										86
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							| @@ -59,16 +59,14 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           sysctl -a | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DCMAKE_BUILD_RPATH="@loader_path" \ | ||||
|             -DLLAMA_FATAL_WARNINGS=ON \ | ||||
|             -DLLAMA_CURL=ON \ | ||||
|             -DGGML_METAL_USE_BF16=ON \ | ||||
|             -DGGML_METAL_EMBED_LIBRARY=ON \ | ||||
|             -DGGML_RPC=ON | ||||
|           cmake --build . --config Release -j $(sysctl -n hw.logicalcpu) | ||||
|           cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) | ||||
|  | ||||
|       - name: Test | ||||
|         id: cmake_test | ||||
| @@ -199,13 +197,11 @@ jobs: | ||||
|       - name: Build | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DLLAMA_FATAL_WARNINGS=ON \ | ||||
|             -DLLAMA_CURL=ON \ | ||||
|             -DGGML_RPC=ON | ||||
|           cmake --build . --config Release -j $(nproc) | ||||
|           cmake --build build --config Release -j $(nproc) | ||||
|  | ||||
|       - name: Test | ||||
|         id: cmake_test | ||||
| @@ -283,26 +279,22 @@ jobs: | ||||
|         id: cmake_build | ||||
|         if: ${{ matrix.sanitizer != 'THREAD' }} | ||||
|         run: | | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DLLAMA_FATAL_WARNINGS=ON \ | ||||
|             -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ | ||||
|             -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} | ||||
|           cmake --build . --config ${{ matrix.build_type }} -j $(nproc) | ||||
|           cmake --build build --config ${{ matrix.build_type }} -j $(nproc) | ||||
|  | ||||
|       - name: Build (no OpenMP) | ||||
|         id: cmake_build_no_openmp | ||||
|         if: ${{ matrix.sanitizer == 'THREAD' }} | ||||
|         run: | | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DLLAMA_FATAL_WARNINGS=ON \ | ||||
|             -DLLAMA_SANITIZE_${{ matrix.sanitizer }}=ON \ | ||||
|             -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ | ||||
|             -DGGML_OPENMP=OFF | ||||
|           cmake --build . --config ${{ matrix.build_type }} -j $(nproc) | ||||
|           cmake --build build --config ${{ matrix.build_type }} -j $(nproc) | ||||
|  | ||||
|       - name: Test | ||||
|         id: cmake_test | ||||
| @@ -335,11 +327,9 @@ jobs: | ||||
|       - name: Build | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DGGML_RPC=ON | ||||
|           cmake --build . --config Release -j $(nproc) | ||||
|           cmake --build build --config Release -j $(nproc) | ||||
|  | ||||
|       - name: Test | ||||
|         id: cmake_test | ||||
| @@ -372,11 +362,9 @@ jobs: | ||||
|       - name: Build | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DGGML_VULKAN=ON | ||||
|           cmake --build . --config Release -j $(nproc) | ||||
|           cmake --build build --config Release -j $(nproc) | ||||
|  | ||||
|       - name: Test | ||||
|         id: cmake_test | ||||
| @@ -493,13 +481,11 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           source /opt/intel/oneapi/setvars.sh | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DGGML_SYCL=ON \ | ||||
|             -DCMAKE_C_COMPILER=icx \ | ||||
|             -DCMAKE_CXX_COMPILER=icpx | ||||
|           cmake --build . --config Release -j $(nproc) | ||||
|           cmake --build build --config Release -j $(nproc) | ||||
|  | ||||
|   ubuntu-22-cmake-sycl-fp16: | ||||
|     runs-on: ubuntu-22.04 | ||||
| @@ -543,14 +529,12 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           source /opt/intel/oneapi/setvars.sh | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake .. \ | ||||
|           cmake -B build \ | ||||
|             -DGGML_SYCL=ON \ | ||||
|             -DCMAKE_C_COMPILER=icx \ | ||||
|             -DCMAKE_CXX_COMPILER=icpx \ | ||||
|             -DGGML_SYCL_F16=ON | ||||
|           cmake --build . --config Release -j $(nproc) | ||||
|           cmake --build build --config Release -j $(nproc) | ||||
|  | ||||
|   macOS-latest-cmake-ios: | ||||
|     runs-on: macos-latest | ||||
| @@ -576,9 +560,7 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           sysctl -a | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake -G Xcode .. \ | ||||
|           cmake -B build -G Xcode \ | ||||
|             -DGGML_METAL_USE_BF16=ON \ | ||||
|             -DGGML_METAL_EMBED_LIBRARY=ON \ | ||||
|             -DLLAMA_BUILD_EXAMPLES=OFF \ | ||||
| @@ -587,7 +569,7 @@ jobs: | ||||
|             -DCMAKE_SYSTEM_NAME=iOS \ | ||||
|             -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \ | ||||
|             -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml | ||||
|           cmake --build . --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|           cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|  | ||||
|   macOS-latest-cmake-tvos: | ||||
|     runs-on: macos-latest | ||||
| @@ -613,9 +595,7 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           sysctl -a | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake -G Xcode .. \ | ||||
|           cmake -B build -G Xcode \ | ||||
|             -DGGML_METAL_USE_BF16=ON \ | ||||
|             -DGGML_METAL_EMBED_LIBRARY=ON \ | ||||
|             -DLLAMA_BUILD_EXAMPLES=OFF \ | ||||
| @@ -624,7 +604,7 @@ jobs: | ||||
|             -DCMAKE_SYSTEM_NAME=tvOS \ | ||||
|             -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \ | ||||
|             -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml | ||||
|           cmake --build . --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|           cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|  | ||||
|   macOS-latest-swift: | ||||
|     runs-on: macos-latest | ||||
| @@ -654,17 +634,15 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           sysctl -a | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake -G Xcode .. \ | ||||
|           cmake -B build -G Xcode \ | ||||
|             -DGGML_METAL_USE_BF16=ON \ | ||||
|             -DGGML_METAL_EMBED_LIBRARY=ON \ | ||||
|             -DLLAMA_BUILD_EXAMPLES=OFF \ | ||||
|             -DLLAMA_BUILD_TESTS=OFF \ | ||||
|             -DLLAMA_BUILD_SERVER=OFF \ | ||||
|             -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" | ||||
|           cmake --build . --config Release -j $(sysctl -n hw.logicalcpu) | ||||
|           sudo cmake --install . --config Release | ||||
|           cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) | ||||
|           sudo cmake --install build --config Release | ||||
|  | ||||
|       - name: xcodebuild for swift package | ||||
|         id: xcodebuild | ||||
| @@ -806,21 +784,19 @@ jobs: | ||||
|         run: | | ||||
|           git clone https://github.com/KhronosGroup/OpenCL-Headers | ||||
|           cd OpenCL-Headers | ||||
|           mkdir build && cd build | ||||
|           cmake .. ` | ||||
|           cmake -B build ` | ||||
|             -DBUILD_TESTING=OFF ` | ||||
|             -DOPENCL_HEADERS_BUILD_TESTING=OFF ` | ||||
|             -DOPENCL_HEADERS_BUILD_CXX_TESTS=OFF ` | ||||
|             -DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release" | ||||
|           cmake --build . --target install | ||||
|           cmake --build build --target install | ||||
|           git clone https://github.com/KhronosGroup/OpenCL-ICD-Loader | ||||
|           cd OpenCL-ICD-Loader | ||||
|           mkdir build-arm64-release && cd build-arm64-release | ||||
|           cmake .. ` | ||||
|           cmake -B build-arm64-release ` | ||||
|             -A arm64 ` | ||||
|             -DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/opencl-arm64-release" ` | ||||
|             -DCMAKE_INSTALL_PREFIX="$env:RUNNER_TEMP/opencl-arm64-release" | ||||
|           cmake --build . --target install --config release | ||||
|           cmake --build build-arm64-release --target install --config release | ||||
|  | ||||
|       - name: Build | ||||
|         id: cmake_build | ||||
| @@ -1284,9 +1260,7 @@ jobs: | ||||
|         id: cmake_build | ||||
|         run: | | ||||
|           sysctl -a | ||||
|           mkdir build | ||||
|           cd build | ||||
|           cmake -G Xcode .. \ | ||||
|           cmake -B build -G Xcode \ | ||||
|             -DGGML_METAL_USE_BF16=ON \ | ||||
|             -DGGML_METAL_EMBED_LIBRARY=ON \ | ||||
|             -DLLAMA_BUILD_EXAMPLES=OFF \ | ||||
| @@ -1295,8 +1269,8 @@ jobs: | ||||
|             -DCMAKE_SYSTEM_NAME=iOS \ | ||||
|             -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \ | ||||
|             -DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml | ||||
|           cmake --build . --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|           sudo cmake --install . --config Release | ||||
|           cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO | ||||
|           sudo cmake --install build --config Release | ||||
|  | ||||
|       - name: xcodebuild for swift package | ||||
|         id: xcodebuild | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Olivier Chafik
					Olivier Chafik