diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..2791c8c5 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,48 @@ +name: CI Build + +on: + pull_request: + branches: + - '**' + push: + branches: + - main + workflow_dispatch: + +concurrency: + group: ci-build-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build + runs-on: ubuntu-24.04 + timeout-minutes: 60 + permissions: + contents: read + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: recursive + fetch-depth: 1 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Build builder container + uses: docker/build-push-action@v6 + with: + context: tools/build-container + file: tools/build-container/Dokerfile.rhel9 + load: true + tags: gpuagent-builder-rhel:9 + cache-from: type=gha + cache-to: type=gha,mode=max + + - name: Build gpuagent + run: | + make gpuagent \ + GIT_COMMIT=$(git rev-list -1 HEAD --abbrev-commit) \ + BUILD_DATE=$(date +%Y-%m-%dT%H:%M:%S%z) diff --git a/sw/nic/gpuagent/Makefile b/sw/nic/gpuagent/Makefile index f1c30b78..3f7f82bb 100644 --- a/sw/nic/gpuagent/Makefile +++ b/sw/nic/gpuagent/Makefile @@ -131,7 +131,7 @@ LDFLAGS_COMMON := -pthread -rdynamic -no-canonical-prefixes -Wl,--gc-sections \ -Wl,-z,relro,-z,now -Wl,--build-id=md5 -Wl,--hash-style=gnu \ -L$(BLD_LIB_DIR) -Wl,-rpath,$(BLD_LIB_DIR) \ -Wl,-rpath-link,$(BLD_LIB_DIR) -L${BLD_DIR}/lib -L${BLD_DIR}/lib64 \ - -l:libprotobuf.a -lgrpc++_reflection -lgrpc++ -lgrpc -lgpr -lupb -lcares \ + -l:libprotobuf.a -Wl,--start-group -lgrpc++_reflection -lgrpc++ -lgrpc -lgpr -lupb -lcares \ -laddress_sorting -l:libgrpc.a -l:libre2.a -labsl_synchronization -labsl_periodic_sampler -labsl_time \ -labsl_time_zone -labsl_int128 -labsl_bad_optional_access -labsl_bad_any_cast_impl -labsl_bad_variant_access\ -labsl_spinlock_wait -labsl_log_severity -labsl_strerror -labsl_raw_logging_internal -labsl_throw_delegate \ @@ -148,7 +148,7 @@ LDFLAGS_COMMON := -pthread -rdynamic -no-canonical-prefixes -Wl,--gc-sections \ -labsl_statusor -labsl_flags_commandlineflag_internal -labsl_flags_commandlineflag \ -labsl_flags_private_handle_accessor -labsl_flags_marshalling -labsl_flags_program_name \ -labsl_flags_config -labsl_flags_internal -labsl_flags_reflection -labsl_flags -labsl_flags_usage_internal \ - -labsl_flags_usage -labsl_flags_parse -lpthread -lz -lm -lrt -ldl -l:libev.a -l:libzmq.a \ + -labsl_flags_usage -labsl_flags_parse -Wl,--end-group -lpthread -lz -lm -lrt -ldl -l:libev.a -l:libzmq.a \ -l:libssl.a -l:libcrypto.a LDFLAGS_AMD_SMI := ${LDFLAGS_COMMON} \ -L${TOPDIR}/nic/third-party/rocm/amd_smi_lib/x86_64/lib/ \