Similar to commit ca45a8f9 ("Add -D__GLIBC__ to target CFLAGS") newer
versions of strace bundle the kernel headers which cause build errors
such as:
[ALL ] In file included from /home/x-tool/.build/arm-unknown-linux-musleabi/src/strace/bundled/linux/include/uapi/linux/in6.h:26,
[ALL ] from /home/x-tool/.build/arm-unknown-linux-musleabi/src/strace/bundled/linux/include/uapi/linux/if_bridge.h:19,
[ALL ] from /home/x-tool/.build/arm-unknown-linux-musleabi/src/strace/src/rtnl_mdb.c:16:
[ERROR] /home/x-tool/.build/arm-unknown-linux-musleabi/src/strace/bundled/linux/include/uapi/linux/libc-compat.h:109: error: "__UAPI_DEF_IN6_ADDR_ALT" redefined [-Werror]
[ALL ] 109 | #define __UAPI_DEF_IN6_ADDR_ALT 1
[ALL ] |
[ALL ] In file included from /home/x-tool/.build/arm-unknown-linux-musleabi/src/strace/src/rtnl_mdb.c:15:
[ALL ] /home/x-tool/x-tools/arm-unknown-linux-musleabi/arm-unknown-linux-musleabi/sysroot/usr/include/netinet/in.h:401: note: this is the location of the previous definition
[ALL ] 401 | #define __UAPI_DEF_IN6_ADDR_ALT 0
[ALL ] |
[ALL ] cc1: all warnings being treated as errors
By defining __USE_MISC we get __UAPI_DEF_IN6_ADDR_ALT defined in a
compatible manner.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
sh-multilib-linux-gnu ends up building 8 different libcs. This seems to
be problematic for the github hosted runners as it appears to run them
out of disk space (anecdotally this seems to have gotten worse with the
switch from ubuntu-18.04 to ubuntu-20.04).
Build sh-unknown-elf instead to make sure we cover of the sh
architecture to some degree.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
If existing board's .specs are used for linking of a user's application,
then instead of normally used libs like libc.a & libstdc++.a might be
requested their "nano"-suffixed siblings: libc_nano.a, libstdc++_nano etc.
That way:
----------------------------->8---------------------------
%rename link_gcc_c_sequence myboard_link_gcc_c_sequence
*myboard_libc:
%{!specs=nano.specs:-lc} %{specs=nano.specs:-lc_nano}
*link_gcc_c_sequence:
%(myboard_link_gcc_c_sequence) --start-group %G %(myboard_libc) --end-group
----------------------------->8---------------------------
Our companion newlib-nano libs are all built optimized for size, so we'd like
to use them for linking. But given linker will see "-lc_nano -lstdc++_nano"
on its command line non-suffixed libs will be ignored.
To solve it we create those "_nano"-suffixed libraries as simple symlinks to
existing libs..
Fixes https://github.com/crosstool-ng/crosstool-ng/issues/1458.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
As of today baremetal (AKA "Elf32") & Linux glibc toolchains are even
more important than Linux uClibc one for ARC, so adding them.
We exclude ARC Linux toolchains from Mac buils as it seem to not make
much sense and anyway glibc build for ARC700 fails,
see https://github.com/crosstool-ng/crosstool-ng/pull/1456#issuecomment-779150246
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
As of today ARCompact (AKA "ARCv1 ISA") processors (mostly those are ARC770)
are not officially supported by upstream glibc as it adds quite some burden
on release ans support of yet another "architecture" port.
But given on ABI and ISA front ARCompact is very close to ARCv2 we may
easily retrofit its support off-the-tree, which we do here.
Also given amount of changes we need to apply there's a hope it will be easy
and straight-forward to apply the same to later versions of glibc.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
The kconfig update has pulled in a change creating a top level include/
directory, ignore this from git perspective to avoid mis-committing.
Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
Forward ported all local patches from previous glibc release 2.32, they
applied cleanly.
Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
Forward ported patches from binutils 2.35.1, refreshed to match current
sources.
Patch 0008-poison-system-directories.patch did not apply clean and had
minor adjustments to fit new binutils 2.36.1 release.
Dropped the following patches as they have been applied upstream:
- 0009-Import-patch-from-mainline-to-fix-decoding-DWARF-inf.patch
- 0010-arm-Fix-the-wrong-error-message-string-for-mve-vldr-.patch
Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
09d5873e4d1f kconfig: allow only 'config', 'comment', and 'if' inside 'choice'
644a4b6cecc2 kconfig: do not assign a variable in the return statement
cfc6eea9f6af kconfig: do not use OR-assignment for zero-cleared structure
Signed-off-by: Chris Packham <judge.packham@gmail.com>
New versions of Kconfig won't allow choices to be nested. Update the
kconfig template accordingly.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
When we have mirrors set to $(CT_Mirror foo bar) we need some extra
escaping so that they get interpreted correctly by kconfig.
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
60969f02f07a kconfig: qconf: Fix a few alignment issues
e1f7769f6094 kconfig: qconf: remove some old bogus TODOs
b311142fcfd3 kconfig: qconf: fix support for the split view mode
cce1faba8264 kconfig: qconf: fix the content of the main widget
5752ff07fd90 kconfig: qconf: Change title for the item window
cf497b922386 kconfig: qconf: clean deprecated warnings
dbd35860122b kconfig: remove unused variable in qconf.cc
d198b34f3855 .gitignore: add SPDX License Identifier
2985bed68083 .gitignore: remove too obvious comments
3a9dd3ecb207 kconfig: make 'imply' obey the direct dependency
def2fbffe62c kconfig: allow symbols implied by y to become m
2a86f6612164 kbuild: use KBUILD_DEFCONFIG as the fallback for DEFCONFIG_LIST
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
089b7d890f97 kconfig: Invalidate all symbols after changing to y or m.
5f2fb52fac15 kbuild: rename hostprogs-y/always to hostprogs/always-y
c8fb7d7e48d1 kconfig: fix broken dependency in randconfig-generated .config
ba82f52e2287 kconfig: fix an "implicit declaration of function" warning
a9609686042b kconfig: fix nesting of symbol help text
3460d0bc256a kconfig: distinguish between dependencies and visibility in help text
edda15f21974 kconfig: list all definitions of a symbol in help text
89b9060987d9 kconfig: Add yes2modconfig and mod2yesconfig targets.
c8138a57bbd1 kconfig: use $(PERL) in Makefile
1d1352373ebc kconfig: fix too deep indentation in Makefile
68f0d62746bc kconfig: localmodconfig: fix indentation for closing brace
5edcef8454a4 kconfig: localmodconfig: remove unused $config
adf7c5bd0674 kconfig: squash prop_alloc() into menu_add_prop()
6397d96ba5a5 kconfig: remove sym from struct property
2ffeef615b5e kconfig: remove 'prompt' argument from menu_add_prop()
024352ff8d69 kconfig: move prompt handling to menu_add_prompt() from menu_add_prop()
1be6e791383a kconfig: remove 'prompt' symbol
801b27db4638 kconfig: drop T_WORD from the RHS of 'prompt' symbol
de026ca9152c kconfig: use parent->dep as the parentdep of 'menu'
f64048a20b0c kconfig: remove the rootmenu check in menu_add_prop()
8b41fc4454e3 kbuild: create modules.builtin without Makefile.modbuiltin or tristate.conf
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
272a72103012 kconfig: don't crash on NULL expressions in expr_eq()
46b2afa6890d kconfig: be more helpful if pkg-config is missing
5d8b42aa7ccb kconfig: Add option to get the full help text with listnewconfig
a64c0440dda1 kbuild: Wrap long "make help" text lines
521b29b6ff53 kconfig: split util.c out of parser.y
60bef52c7a68 merge_config.sh: ignore unwanted grep errors
54b8ae66ae1a kbuild: change *FLAGS_<basetarget>.o to take the path relative to $(obj)
1634f2bfdb84 kbuild: remove clean-dirs syntax
cdfca821571d merge_config.sh: Check error codes from make
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
0c5b6c28ed68 kconfig: Clear "written" flag to avoid data loss
8e2442a5f86e kconfig: fix missing choice values in auto.conf
3266c806dc86 kconfig: run olddefconfig instead of oldconfig after merging fragments
e3cd5136a4ec kconfig: remove meaningless if-conditional in conf_read()
baa23ec86092 kconfig: Fix spelling of sym_is_changable
cd238effefa2 docs: kbuild: convert docs to ReST and rename to *.rst
bd305f259cd3 kconfig: make arch/*/configs/defconfig the default of KBUILD_DEFCONFIG
5533397d1ec8 kconfig: add static qualifier to expand_string()
b6f7e9f7050b kconfig: require the argument of --defconfig
e0a2668665a5 kconfig: remove always false ifeq ($(KBUILD_DEFCONFIG,) conditional
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
8dde5715b280 kconfig: tests: fix recursive inclusion unit test
ec8f24b7faaf treewide: Add SPDX license identifier - Makefile/Kconfig
fc2694ec1ab7 kconfig: use 'else ifneq' for Makefile to improve readability
aff11cd983ec kconfig: Terminate menu blocks with a comment in the generated config
9cc342f6c4a0 treewide: prefix header search paths with $(srctree)/
9b9f5948afcd kconfig: make conf_get_autoconfig_name() static
b9d1a8e9302e kconfig: use snprintf for formatting pathnames
4cb726121e2c kconfig: remove useless NULL pointer check in conf_write_dep()
580c5b3e1b8b kconfig: make parent directories for the saved .config as needed
67424f61f813 kconfig: do not write .config if the content is the same
ceb7f3296ea1 kconfig: do not accept a directory for configuration output
65be755a5411 kconfig: remove trailing whitespaces
b63e37bc9ec4 kconfig: Make nconf-cfg.sh executable
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
9c38f1f04408 kconfig/[mn]conf: handle backspace (^H) key
c71bb9f86666 kconfig: remove stale lxdialog/.gitignore
8741908b3e29 kconfig: fix 'Save As' menu of xconfig
058507195b53 kbuild: move ".config not found!" message from Kconfig to Makefile
769a1c022678 kconfig: rename zconf.y to parser.y
981e545a698a kconfig: rename zconf.l to lexer.l
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
2648ca1859bb kconfig: clean generated *conf-cfg files
d86271af6460 kconfig: rename generated .*conf-cfg to *conf-cfg
ba97df45581f kbuild: use assignment instead of define ... endef for filechk_* rules
a5003571e627 kconfig: remove unused "file" field of yylval union
f222b7f43661 kconfig: surround dbg_sym_flags with #ifdef DEBUG to fix gconf warning
3b541978562a kconfig: split images.c out of qconf.cc/gconf.c to fix gconf warnings
9abe42371b44 kconfig: add static qualifiers to fix gconf warnings
cbafbf7f551c kconfig: split the lexer out of zconf.y
558e78e3ce84 kconfig: split some C files out of zconf.y
0c874100108f kconfig: convert to SPDX License Identifier
979f2b2f7936 kconfig: remove keyword lookup table entirely
4b31a32caf0a kconfig: update current_pos in the second lexer
824fa3b3b5e3 kconfig: switch to ASSIGN_VAL state in the second lexer
b3d1d9d3c362 kconfig: stop associating kconf_id with yylval
caaebb3c6de3 kconfig: refactor end token rules
f5451582c4e2 kconfig: stop supporting '.' and '/' in unquoted words
171a515d0803 kconfig: use T_WORD instead of T_VARIABLE for variables
c3d228713b10 kconfig: use specific tokens instead of T_ASSIGN for assignments
ce2164ab5831 kconfig: refactor scanning and parsing "option" properties
3c8f317d4cf1 kconfig: use distinct tokens for type and default properties
a01e5d242d93 kconfig: remove redundant token defines
4b5ec81bfeda kconfig: rename depends_list to comment_option_list
1f31be9ec0a9 kconfig: loosen the order of "visible" and "depends on" in menu entry
94d4e1b6021b kconfig: remove redundant menu_block rule
4891796c6f83 kconfig: remove redundant if_block rule
2f60e46e605a kconfig: remove grammatically ambiguous option_error
6900ae9eeee3 kconfig: remove grammatically ambiguous "unexpected option" diagnostic
723679339d08 kconfig: warn no new line at end of file
0bcc547ec4b0 kconfig: clean up EOF handling in the lexer
cc66bca775ee kconfig: fix ambiguous grammar in terms of new lines
21c5ecf60472 kconfig: refactor pattern matching in STRING state
be3c8075978a kconfig: remove unneeded pattern matching to whitespaces
413cd19d81fd kconfig: require T_EOL to reduce visible statement
fbac5977d81c kconfig: fix memory leak when EOF is encountered in quotation
77c1c0fa8b14 kconfig: fix file name and line number of warn_ignored_character()
0cbe3ac439bf kconfig: remove k_invalid from expr_parse_string() return type
2aabbed6774f kconfig: remove S_OTHER symbol type and correct dependency tracking
1508fec82e39 kconfig: split out code touching a file to conf_touch_dep()
0849d212e395 kconfig: rename conf_split_config() to conf_touch_deps()
75889e9be78f kconfig: remove unneeded setsym label in conf_read_simple()
a9b722847872 scripts/kconfig/merge_config: don't redefine 'y' to 'm'
Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit introduces the following upstream changes:
fd65465b7016 kconfig: do not require pkg-config on make {menu,n}config
bc8d2e20a3eb kconfig: remove a spurious self-assignment
9a9ddcf47831 kconfig: suppress "configuration written to .config" for syncconfig
98a4afbfafd2 kconfig: fix "Can't open ..." in parallel build
f498926c47aa kconfig: improve the recursive dependency report
5e8c5299d315 kconfig: report recursive dependency involving 'imply'
f1575595d156 kconfig: error out when seeing recursive dependency
4bf6a9af0e91 kconfig: add build-only configurator targets
1880861226c1 kconfig: remove P_ENV property type
c151272d1687 kconfig: remove unused sym_get_env_prop() function
56869d45e364 kconfig: fix the rule of mainmenu_stmt symbol
00c864f8903d kconfig: allow all config targets to write auto.conf if missing
16952b77d8b5 kconfig: make syncconfig update .config regardless of sym_change_count
79123b1389cc kconfig: create directories needed for syncconfig by itself
adc18acf42a1 kconfig: remove unneeded directory generation from local*config
0608182ad542 kconfig: split out useful helpers in confdata.c
a2ff4040151a kconfig: rename file_write_dep and move it to confdata.c
5accd7f3360e kconfig: handle format string before calling conf_message_callback()
693359f7ac90 kconfig: rename SYMBOL_AUTO to SYMBOL_NO_WRITE
4ab3b80159d4 kconfig: check for pkg-config on make {menu,n,g,x}config
8377bd2b9ee1 kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS
Signed-off-by: Chris Packham <judge.packham@gmail.com>