mirror of git://git.musl-libc.org/musl
add framework for arch-provided makefile fragments, compat source dirs
the immediate usage case for this is to let 32-bit archs moving to 64-bit time_t via symbol redirection pull in wrapper shims that provide the old symbol names. in the future it may be used for other types of compatibility-only source files that are not relevant to all archs.
This commit is contained in:
parent
5a25759a21
commit
de90f38e3b
5
Makefile
5
Makefile
|
@ -17,7 +17,7 @@ includedir = $(prefix)/include
|
||||||
libdir = $(prefix)/lib
|
libdir = $(prefix)/lib
|
||||||
syslibdir = /lib
|
syslibdir = /lib
|
||||||
|
|
||||||
SRC_DIRS = $(addprefix $(srcdir)/,src/* crt ldso)
|
SRC_DIRS = $(addprefix $(srcdir)/,src/* crt ldso $(COMPAT_SRC_DIRS))
|
||||||
BASE_GLOBS = $(addsuffix /*.c,$(SRC_DIRS))
|
BASE_GLOBS = $(addsuffix /*.c,$(SRC_DIRS))
|
||||||
ARCH_GLOBS = $(addsuffix /$(ARCH)/*.[csS],$(SRC_DIRS))
|
ARCH_GLOBS = $(addsuffix /$(ARCH)/*.[csS],$(SRC_DIRS))
|
||||||
BASE_SRCS = $(sort $(wildcard $(BASE_GLOBS)))
|
BASE_SRCS = $(sort $(wildcard $(BASE_GLOBS)))
|
||||||
|
@ -27,7 +27,7 @@ ARCH_OBJS = $(patsubst $(srcdir)/%,%.o,$(basename $(ARCH_SRCS)))
|
||||||
REPLACED_OBJS = $(sort $(subst /$(ARCH)/,/,$(ARCH_OBJS)))
|
REPLACED_OBJS = $(sort $(subst /$(ARCH)/,/,$(ARCH_OBJS)))
|
||||||
ALL_OBJS = $(addprefix obj/, $(filter-out $(REPLACED_OBJS), $(sort $(BASE_OBJS) $(ARCH_OBJS))))
|
ALL_OBJS = $(addprefix obj/, $(filter-out $(REPLACED_OBJS), $(sort $(BASE_OBJS) $(ARCH_OBJS))))
|
||||||
|
|
||||||
LIBC_OBJS = $(filter obj/src/%,$(ALL_OBJS))
|
LIBC_OBJS = $(filter obj/src/%,$(ALL_OBJS)) $(filter obj/compat/%,$(ALL_OBJS))
|
||||||
LDSO_OBJS = $(filter obj/ldso/%,$(ALL_OBJS:%.o=%.lo))
|
LDSO_OBJS = $(filter obj/ldso/%,$(ALL_OBJS:%.o=%.lo))
|
||||||
CRT_OBJS = $(filter obj/crt/%,$(ALL_OBJS))
|
CRT_OBJS = $(filter obj/crt/%,$(ALL_OBJS))
|
||||||
|
|
||||||
|
@ -75,6 +75,7 @@ WRAPCC_CLANG = clang
|
||||||
LDSO_PATHNAME = $(syslibdir)/ld-musl-$(ARCH)$(SUBARCH).so.1
|
LDSO_PATHNAME = $(syslibdir)/ld-musl-$(ARCH)$(SUBARCH).so.1
|
||||||
|
|
||||||
-include config.mak
|
-include config.mak
|
||||||
|
-include arch/$(ARCH)/arch.mak
|
||||||
|
|
||||||
ifeq ($(ARCH),)
|
ifeq ($(ARCH),)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue