blob: 3b6a8061162cc8d21c657ddf9acabb9066d36389 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
# in projects where [ $mb_use_custom_cfgdefs = yes ],
# cfgdefs.sh is invoked from within ./configure via
# . $mb_project_dir/project/cfgdefs.sh
# a successful return from cfgdefs.sh will be followed
# by a second invocation of the config_copy() function,
# reflecting any changes to common config variables
# made by cfgdefs.sh.
# finally, cfgdefs.sh may update the contents of the
# config-time generated cfgdefs.mk.
# cfgdefs helper functions
. "$mb_project_dir/project/config/cfghost.sh"
# sofort's config test framework
. "$mb_project_dir/sofort/cfgtest.sh"
for arg ; do
case "$arg" in
*)
error_msg ${arg#}: "unsupported config argument."
exit 2
esac
done
cfgdefs_set_cfghost_flavors()
{
cfghost_set_target_cfghost
cfghost_set_native_cfghost
}
cfgdefs_perform_target_tests()
{
# init
cfgtest_target_section
# headers
cfgtest_header_absence 'stropts.h'
# openssl
mb_cfgtest_headers='openssl/x509.h'
cfgtest_interface_presence 'X509_NAME_ENTRY_set' \
&& cfgtest_cflags_append '-DOPENSSL_VERSION_1_1'
# ncurses: python refers to members of typedef struct _win_st WINDOW
cfgtest_cflags_append '-DNCURSES_INTERNALS'
# ncurses libs
mb_ncurses_libs='-lpanelw -lncursesw'
mb_ncurses_tinfo='-ltinfo'
cfgtest_library_presence $mb_ncurses_tinfo \
&& mb_ncurses_libs="$mb_ncurses_libs $mb_ncurses_tinfo"
mb_cfgtest_makevar='LDFLAGS_NCURSES_LIBS'
cfgtest_makevar_append $mb_ncurses_libs
# pretty cfgdefs.mk
cfgtest_newline
}
cfgdefs_perform_native_tests()
{
# init
cfgtest_native_section
# headers
cfgtest_header_absence 'stropts.h'
# ncurses: python refers to members of typedef struct _win_st WINDOW
cfgtest_cflags_append '-DNCURSES_INTERNALS'
# ncurses libs
mb_ncurses_libs='-lpanelw -lncursesw'
mb_ncurses_tinfo='-ltinfo'
cfgtest_library_presence $mb_ncurses_tinfo \
&& mb_ncurses_libs="$mb_ncurses_libs $mb_ncurses_tinfo"
cfgtest_ldflags_append $mb_ncurses_libs
# pretty cfgdefs.mk
cfgtest_newline
}
# cfghost
cfgdefs_set_cfghost_flavors
# target-specific tests
cfgdefs_perform_target_tests
# native system tests
cfgdefs_perform_native_tests
# all done
return 0
|