mirror of
				https://github.com/ArthurSonzogni/FTXUI.git
				synced 2025-11-01 02:58:12 +08:00 
			
		
		
		
	Bazel: general improvements. (#1043)
* Bazel: general improvements. Improve the Bazel build. Attempt to fix previous errors recorded while trying to publish ftxui in the Bazel Central Registry: - https://github.com/bazelbuild/bazel-central-registry/pull/4485 - https://buildkite.com/bazel/bcr-presubmit/builds/13601#01968b61-f5b2-4d16-94d0-c87a03a1a23b Test against "recent" platforms ------------------------------- Previously, I got the error: ``` gcc: error: unrecognized command line option '-std-c++20'; did you mean '-std-c++2a'? ``` This was due to using old distribution like ubuntu 2004. Test against newer platforms only to avoid GCC version<-9.x.y Downgrade gtest version. ------------------------ I suspect this caused the Bazel Central Registry error: ``` file:///workdir/modules/googletest/1.15.2/MODULE.bazel:68:20: name 'use_repo_rule' is not defined ``` Specifying using bazelmod fixes the issue. Thanks @robinlinden Tag gtest as dev_dependency --------------------------- Presumably, this should avoid dependants to fetch it? Enable --features-layering_check -------------------------------- Aka clang `-Wprivate-header`. Fix the encountered errors. Use clang in the CI ------------------- The CI was defining clang/gcc in the matrix, but was not using it. Fix the bug.
This commit is contained in:
		
							
								
								
									
										25
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										25
									
								
								.github/workflows/build.yaml
									
									
									
									
										vendored
									
									
								
							| @@ -14,25 +14,30 @@ on: | ||||
| jobs: | ||||
|  | ||||
|   test_bazel: | ||||
|     name: "Bazel, ${{ matrix.compiler }}, ${{ matrix.os }}" | ||||
|     name: "Bazel, ${{ matrix.cxx }}, ${{ matrix.os }}" | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         include: | ||||
|           - os: ubuntu-latest | ||||
|             compiler: gcc | ||||
|             cxx: g++ | ||||
|             cc: gcc | ||||
|  | ||||
|           - os: ubuntu-latest | ||||
|             compiler: llvm | ||||
|             cxx: clang++ | ||||
|             cc: clang | ||||
|  | ||||
|           - os: macos-latest | ||||
|             compiler: llvm | ||||
|             cxx: g++ | ||||
|             cc: gcc | ||||
|  | ||||
|           - os: macos-latest | ||||
|             compiler: gcc | ||||
|             cxx: clang++ | ||||
|             cc: clang | ||||
|  | ||||
|           - os: windows-latest | ||||
|             compiler: cl | ||||
|             cxx: cl | ||||
|             cc: cl | ||||
|  | ||||
|     runs-on: ${{ matrix.os }} | ||||
|     steps: | ||||
| @@ -40,10 +45,16 @@ jobs: | ||||
|         uses: actions/checkout@v3 | ||||
|  | ||||
|       - name: "Build with Bazel" | ||||
|         env: | ||||
|           CC: ${{ matrix.cc }} | ||||
|           CXX: ${{ matrix.cxx }} | ||||
|         run: bazel build ... | ||||
|  | ||||
|       - name: "Tests with Bazel" | ||||
|         run: bazel run tests | ||||
|         env: | ||||
|           CC: ${{ matrix.cc }} | ||||
|           CXX: ${{ matrix.cxx }} | ||||
|         run: bazel test --test_output=all ... | ||||
|  | ||||
|   test_cmake: | ||||
|     name: "CMake, ${{ matrix.compiler }}, ${{ matrix.os }}" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Arthur Sonzogni
					Arthur Sonzogni