Spdk/test/external_code
Michal Berger 5aaa207a05 tests: Run make clean only when SPDK was configured
Otherwise the cmd fails due to the lack of config.mk. This forces
autopackage.sh, test_make.sh, etc. to be executed in the environment
where SPDK was already built which shouldn't be really a hard
requirement as they always re-build the SPDK for their own purposes.

Signed-off-by: Michal Berger <michal.berger@intel.com>
Change-Id: Ie3971acbf354734ed9c5c72d49bb93fc2ccc45f8
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15743
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Kamil Godzwon <kamilx.godzwon@intel.com>
Reviewed-by: Pawel Piatek <pawelx.piatek@intel.com>
2023-02-02 09:05:56 +00:00
..
hello_world accel: Add crypto operation support 2023-01-11 09:16:59 +00:00
nvme add (c) and SPDX header to bash files as needed 2022-11-29 08:27:51 +00:00
passthru external_bdev_passthru: Use bdev_unregister_by_name() to delete a passthru bdev 2023-01-31 21:40:09 +00:00
Makefile update Intel copyright notices 2022-11-10 08:28:53 +00:00
README.md markdownlint: enable rule MD040 2021-09-08 21:53:48 +00:00
test_make.sh tests: Run make clean only when SPDK was configured 2023-02-02 09:05:56 +00:00

This directory is meant to demonstrate how to link an external application and bdev module to the SPDK libraries. The makefiles contain six examples of linking against spdk libraries. They cover linking an application both with and without a custom bdev. For each of these categories, they also demonstrate linking against the spdk combined shared library, individual shared libraries, and static libraries.

This directory also contains a convenient test script, test_make.sh, which automates making SPDK and testing all six of these linker options. It takes a single argument, the path to an SPDK repository and should be run as follows:

sudo ./test_make.sh /path/to/spdk

The application hello_bdev is a symlink and bdev module passthru_external have been copied from their namesakes in the top level SPDK github repository and don't have any special functionality.