xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/8] xen: beginnings of moving library-like code into an archive
@ 2020-11-23 15:16 Jan Beulich
  2020-11-23 15:20 ` [PATCH v3 1/8] xen: fix build when $(obj-y) consists of just blanks Jan Beulich
                   ` (9 more replies)
  0 siblings, 10 replies; 31+ messages in thread
From: Jan Beulich @ 2020-11-23 15:16 UTC (permalink / raw)
  To: xen-devel
  Cc: Andrew Cooper, George Dunlap, Ian Jackson, Julien Grall, Wei Liu,
	Stefano Stabellini, Anthony Perard

In a few cases we link in library-like functions when they're not
actually needed. While we could use Kconfig options for each one
of them, I think the better approach for such generic code is to
build it always (thus making sure a build issue can't be introduced
for these in any however exotic configuration) and then put it into
an archive, for the linker to pick up as needed. The series here
presents a first few tiny steps towards such a goal.

Note that we can't use thin archives yet, due to our tool chain
(binutils) baseline being too low.

Further almost immediate steps I'd like to take if the approach
meets no opposition are
- split and move the rest of common/lib.c,
- split and move common/string.c, dropping the need for all the
  __HAVE_ARCH_* (implying possible per-arch archives then need to
  be specified ahead of lib/lib.a on the linker command lines),
- move common/libelf/ and common/libfdt/.

v3 has a new 1st patch and some review feedback addressed. See
individual patches.

1: xen: fix build when $(obj-y) consists of just blanks
2: lib: collect library files in an archive
3: lib: move list sorting code
4: lib: move parse_size_and_unit()
5: lib: move init_constructors()
6: lib: move rbtree code
7: lib: move bsearch code
8: lib: move sort code

Jan


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2020-12-18  9:25 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-23 15:16 [PATCH v3 0/8] xen: beginnings of moving library-like code into an archive Jan Beulich
2020-11-23 15:20 ` [PATCH v3 1/8] xen: fix build when $(obj-y) consists of just blanks Jan Beulich
2020-12-09 11:34   ` Bertrand Marquis
2020-12-09 17:40   ` Anthony PERARD
2020-12-10 10:21     ` Jan Beulich
2020-12-10 14:50       ` Anthony PERARD
2020-11-23 15:21 ` [PATCH v3 2/8] lib: collect library files in an archive Jan Beulich
2020-12-09 11:37   ` Bertrand Marquis
2020-12-09 14:42     ` Jan Beulich
2020-12-09 14:46       ` Bertrand Marquis
2020-12-10 14:47   ` Anthony PERARD
2020-12-11 10:00     ` Jan Beulich
2020-12-11 15:49       ` Anthony PERARD
2020-12-18  8:02   ` Ping: Arm: " Jan Beulich
2020-12-18  9:25     ` Julien Grall
2020-11-23 15:21 ` [PATCH v3 3/8] lib: move list sorting code Jan Beulich
2020-12-09 11:39   ` Bertrand Marquis
2020-11-23 15:22 ` [PATCH v3 4/8] lib: move parse_size_and_unit() Jan Beulich
2020-12-09 11:40   ` Bertrand Marquis
2020-11-23 15:22 ` [PATCH v3 5/8] lib: move init_constructors() Jan Beulich
2020-12-09 14:16   ` Bertrand Marquis
2020-11-23 15:23 ` [PATCH v3 6/8] lib: move rbtree code Jan Beulich
2020-12-09 14:18   ` Bertrand Marquis
2020-11-23 15:23 ` [PATCH v3 7/8] lib: move bsearch code Jan Beulich
2020-11-23 15:24 ` [PATCH v3 8/8] lib: move sort code Jan Beulich
2020-12-09 14:27   ` Bertrand Marquis
2020-12-04 11:43 ` [PATCH v3 0/8] xen: beginnings of moving library-like code into an archive Wei Liu
2020-12-09 11:33 ` Bertrand Marquis
2020-12-09 14:47   ` Jan Beulich
2020-12-09 14:51     ` Julien Grall
2020-12-09 14:56       ` Jan Beulich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).