Add RDMA ibverb driver plugin
[vpp.git] / build / external / packages / rdma-core.mk
1 # Copyright (c) 2018 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 rdma-core_version             := 23
15 rdma-core_tarball             := rdma-core-$(rdma-core_version).tar.gz
16 rdma-core_tarball_md5sum_22.1 := dde4d30e3db20893408ae51041117034
17 rdma-core_tarball_md5sum_23 := c78575735c4a71609c1a214ea16cd8dc
18 rdma-core_tarball_md5sum      := $(rdma-core_tarball_md5sum_$(rdma-core_version))
19 rdma-core_tarball_strip_dirs  := 1
20 rdma-core_url                 := http://github.com/linux-rdma/rdma-core/releases/download/v$(rdma-core_version)/$(rdma-core_tarball)
21
22 RDMA_FILES := include/infiniband/verbs.h \
23               include/infiniband/verbs_api.h \
24               include/infiniband/ib_user_ioctl_verbs.h \
25               include/rdma/ib_user_verbs.h \
26               lib/statics/libibverbs.a \
27               lib/statics/libmlx5.a
28
29 define  rdma-core_config_cmds
30         cd $(rdma-core_build_dir) && \
31           cmake -G Ninja $(rdma-core_src_dir) \
32             -DENABLE_STATIC=1 -DENABLE_RESOLVE_NEIGH=0 -DNO_PYVERBS=1 -DENABLE_VALGRIND=0 \
33             -DCMAKE_BUILD_TYPE=RelWithDebInfo \
34             -DCMAKE_C_FLAGS=-fPIC > $(rdma-core_config_log)
35 endef
36
37 define  rdma-core_build_cmds
38         cmake --build $(rdma-core_build_dir) -- libibverbs.a libmlx5.a > $(rdma-core_build_log)
39 endef
40
41 define  rdma-core_install_cmds
42         mkdir -p $(rdma-core_install_dir)
43         tar -C $(rdma-core_build_dir) --xform='s|/statics/|/|' -hc $(RDMA_FILES) | tar -C $(rdma-core_install_dir) -xv > $(rdma-core_install_log)
44 endef
45
46 $(eval $(call package,rdma-core))