mailing list of musl libc
 help / color / mirror / code / Atom feed
* Design idea for subarchs/abivariants
@ 2012-11-28 19:26 Rich Felker
  2012-11-28 20:03 ` Isaac Dunham
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Rich Felker @ 2012-11-28 19:26 UTC (permalink / raw)
  To: musl

The problem: how to have subarch variants on the bits headers and asm
for a given arch without ugly build system complications or massive
duplication of files.

Proposed solution:

1. $(ARCH)$(SUBARCH)/%.s is searched in addition to $(ARCH)/%.s for
arch-specific files replacing general %.c files in the src tree. This
would allow src/fenv/arm-hf/%.s and src/setjmp/mips-sf/%.s files, for
example.

2. Making bits/endian.h, bits/fenv.h, and any other bits headers that
need to vary per-subarch into generated headers. I think this could be
accomplished with a single rule for generating bits/%.h from
bits/%.h.sh the way alltypes.h is generated now. The full
$(ARCH)$(ENDIAN)$(SUBARCH) could be passed to the script as $1,
allowing simple shell logic to choose the right version to output.

3. Having configure derive separate $(ARCH), $(ENDIAN), and $(SUBARCH)
from the gcc-style machine strings or combined musl-format arch string.

This sounds like it will be minimally invasive and meet the
requirements for supporting subarch/abi-variants.

Comments?

Rich


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

end of thread, other threads:[~2012-11-29  8:03 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-28 19:26 Design idea for subarchs/abivariants Rich Felker
2012-11-28 20:03 ` Isaac Dunham
2012-11-28 21:50   ` Szabolcs Nagy
2012-11-28 23:57   ` Rich Felker
2012-11-28 20:26 ` John Spencer
2012-11-28 22:38 ` Szabolcs Nagy
2012-11-29  0:10   ` Rich Felker
2012-11-29  0:22     ` Kurt H Maier
2012-11-29  1:21       ` Rich Felker
2012-11-29  8:03       ` Szabolcs Nagy

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

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).