summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2013-08-11 03:27:35 -0400
committerRich Felker <dalias@aerifal.cx>2013-08-11 03:27:35 -0400
commit90d77722511ad5e9b748f69f42c5b2a8467fa049 (patch)
treec4631a36f4fe43a0f6d49f2d8af78c1eb676dd6f /Makefile
parent7c440977db9444d7e6b1c3dcb1fdf4ee49ca4158 (diff)
downloadmusl-90d77722511ad5e9b748f69f42c5b2a8467fa049.tar.gz
allow subarch-specific asm, including asm specific to the default
the default subarch is the one whose full name is just the base arch name, with no suffixes. normally, either the asm in the default subarch is suitable for all subarch variants, or separate asm is mandatory for each variant. however, in the case of asm which is purely for optimization purposes, it's possible to have asm that only works (or only performs well) on the default subarch, and not any othe the other variants. thus, I have added a mechanism to give a name to the default variant, for example "armel" for the default, little-endian arm. further such default-subarch names can be added in the future as needed.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile3
1 files changed, 3 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 00aa7069..7250e1e6 100644
--- a/Makefile
+++ b/Makefile
@@ -90,6 +90,9 @@ $(OPTIMIZE_SRCS:%.c=%.o) $(OPTIMIZE_SRCS:%.c=%.lo): CFLAGS += -O3
MEMOPS_SRCS = src/string/memcpy.c src/string/memmove.c src/string/memcmp.c src/string/memset.c
$(MEMOPS_SRCS:%.c=%.o) $(MEMOPS_SRCS:%.c=%.lo): CFLAGS += $(CFLAGS_MEMOPS)
+%.o: $(ARCH)$(ASMSUBARCH)/%.s
+ $(CC) $(CFLAGS_ALL_STATIC) -c -o $@ $<
+
%.o: $(ARCH)/%.s
$(CC) $(CFLAGS_ALL_STATIC) -c -o $@ $<