xref: /spdk/test/external_code/accel/Makefile (revision d14f364edd9d51863135b4a633d11fc363d41f09)
1#  SPDX-License-Identifier: BSD-3-Clause
2#  Copyright (C) 2023 Intel Corporation.
3#  All rights reserved.
4#
5
6PKG_CONFIG_PATH = $(SPDK_LIB_DIR)/pkgconfig
7
8SYS_LIB := $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" pkg-config --libs --static spdk_syslibs)
9SPDK_LIB := $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" pkg-config \
10		--libs spdk_event spdk_event_accel spdk_accel spdk_env_dpdk)
11
12shared_module:
13	$(CC) $(COMMON_CFLAGS) -c -fPIC module.c -o module.o
14	$(CC) $(COMMON_CFLAGS) -shared module.o -o libaccel_external_module.so
15	$(CC) $(COMMON_CFLAGS) -o module app_module.c -g -L. -laccel_external_module \
16		-lspdk -lisal -lisal_crypto $(SPDK_LIB)
17
18shared_driver:
19	$(CC) $(COMMON_CFLAGS) -c -fPIC module.c -o module.o
20	$(CC) $(COMMON_CFLAGS) -c -fPIC driver.c -o driver.o
21	$(CC) $(COMMON_CFLAGS) -shared module.o driver.o -o libaccel_external_driver.so
22	$(CC) $(COMMON_CFLAGS) -o driver app_driver.c -g -L. -laccel_external_driver \
23		-lspdk -lisal -lisal_crypto $(SPDK_LIB)
24
25static_module:
26	$(CC) $(COMMON_CFLAGS) -o module module.c app_module.c -pthread \
27		-Wl,--whole-archive,-Bstatic $(SPDK_LIB) \
28		-Wl,--no-whole-archive,-Bdynamic $(SYS_LIB)
29
30static_driver:
31	$(CC) $(COMMON_CFLAGS) -o driver module.c driver.c app_driver.c \
32		-Wl,--whole-archive,-Bstatic $(SPDK_LIB) \
33		-Wl,--no-whole-archive,-Bdynamic $(SYS_LIB) \
34		-pthread
35