There is already CONFIG_SETTINGS_FILE_PATH, which is set to full file path, while CONFIG_SETTINGS_FILE_DIR is required to be set to its parent directory. This is redundant, as parent directory path can be easily found out either during runtime or optionally during buildtime by CMake. CONFIG_SETTINGS_FILE_DIR was actually introduced recently after Zephyr 3.2 release as a replacement of deprecated CONFIG_SETTINGS_FS_DIR. This means, that there is no need to deprecate it for 3.3 release and dropping it should be fine. Adjust 3.3 release notes accordingly, so that CONFIG_SETTINGS_FILE_PATH will be used directly. This patch stops using deprecated CONFIG_SETTINGS_FS_DIR. There is actually no value in respecting it, as setting anything other than parent directory of CONFIG_SETTINGS_FS_FILE makes no sense. There is actually one use of CONFIG_SETTINGS_FILE_DIR in file backend tests, to derive directory for files containing tested settings. CONFIG_SETTINGS_FILE_PATH is not used there, so it makes little sense to derive directory name from it. Instead, just use hardcoded "/settings" subdirectory, as this was the default value of CONFIG_SETTINGS_FILE_DIR. Deriving parent directory can be done either in runtime or in buildtime (e.g. using some helper CMake function). Doing it in runtime however allows to create directory recursively (which this patch actually implements), e.g. for some more nested FS tree structure. Additionally it will simplify migration of settings configuration from Kconfig to device-tree (yet to be developed feature). Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
21 lines
399 B
C
21 lines
399 B
C
/*
|
|
* Copyright (c) 2019 Nordic Semiconductor ASA
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#ifndef _SETTINGS_TEST_H
|
|
#define _SETTINGS_TEST_H
|
|
|
|
#include "settings_test_file.h"
|
|
|
|
#define TEST_FS_MPTR "/fs"
|
|
#define TEST_CONFIG_DIR TEST_FS_MPTR"/settings"
|
|
|
|
void *config_setup_fs(void);
|
|
|
|
void *settings_config_setup(void);
|
|
void settings_config_teardown(void *fixture);
|
|
|
|
#endif /* _SETTINGS_TEST_H */
|