blob: c58b234d679d1f8ab3392b1af39f293337854981 [file] [log] [blame]
Max Krummenacher486aef02022-11-28 09:41:22 +01001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * (C) Copyright 2022
4 * Max Krummenacher, Toradex
5 *
6 * Snippets taken from tools/env/fw_env.c
7 *
8 * This prints the list of default environment variables as currently
9 * configured.
10 *
11 */
12
13#include <stdio.h>
14
15/* Pull in the current config to define the default environment */
16#include <linux/kconfig.h>
17
18#ifndef __ASSEMBLY__
19#define __ASSEMBLY__ /* get only #defines from config.h */
20#include <config.h>
21#undef __ASSEMBLY__
22#else
23#include <config.h>
24#endif
25
26#define DEFAULT_ENV_INSTANCE_STATIC
27#include <generated/environment.h>
28#include <env_default.h>
29
30int main(void)
31{
32 char *env, *nxt;
33
34 for (env = default_environment; *env; env = nxt + 1) {
35 for (nxt = env; *nxt; ++nxt) {
36 if (nxt >= &default_environment[sizeof(default_environment)]) {
37 fprintf(stderr, "## Error: environment not terminated\n");
38 return -1;
39 }
40 }
41 printf("%s\n", env);
42 }
43 return 0;
44}