xref: /relibc/openlibm/Makefile (revision d28fae97740e6c5dc1e182bf134fd57478976f6f)
1307d7361SKeno FischerOPENLIBM_HOME=$(abspath .)
2ccd319c0SViral B. Shahinclude ./Make.inc
3ccd319c0SViral B. Shah
4c977aa99SViral B. ShahSUBDIRS = src ld80 $(ARCH) bsdsrc
5307d7361SKeno Fischer
6307d7361SKeno Fischerdefine INC_template
7307d7361SKeno FischerTEST=test
8307d7361SKeno Fischeroverride CUR_SRCS = $(1)_SRCS
9307d7361SKeno Fischerinclude $(1)/Make.files
10307d7361SKeno FischerSRCS += $$(addprefix $(1)/,$$($(1)_SRCS))
11307d7361SKeno Fischerendef
12307d7361SKeno Fischer
13307d7361SKeno FischerDIR=test
14307d7361SKeno Fischer
15307d7361SKeno Fischer$(foreach dir,$(SUBDIRS),$(eval $(call INC_template,$(dir))))
16307d7361SKeno Fischer
17307d7361SKeno FischerDUPLICATE_NAMES = $(filter $(patsubst %.S,%,$($(ARCH)_SRCS)),$(patsubst %.c,%,$(src_SRCS)))
18307d7361SKeno FischerDUPLICATE_SRCS = $(addsuffix .c,$(DUPLICATE_NAMES))
19307d7361SKeno Fischer
20e8bf3685SViral B. ShahOBJS =  $(patsubst %.f,%.f.o,\
21e8bf3685SViral B. Shah	$(patsubst %.S,%.S.o,\
22e8bf3685SViral B. Shah	$(patsubst %.c,%.c.o,$(filter-out $(addprefix src/,$(DUPLICATE_SRCS)),$(SRCS)))))
2356811b08SViral B. Shah
24307d7361SKeno Fischerall: libopenlibm.a libopenlibm.$(SHLIB_EXT)
2556811b08SViral B. Shah	$(MAKE) -C test
26307d7361SKeno Fischerlibopenlibm.a: $(OBJS)
2707085279SJameson Nash	$(AR) -rcs libopenlibm.a $(OBJS)
28307d7361SKeno Fischerlibopenlibm.$(SHLIB_EXT): $(OBJS)
291bbda186SSébastien Villemot	$(FC) -shared $(OBJS) $(LDFLAGS) -o libopenlibm.$(SHLIB_EXT)
30ccd319c0SViral B. Shah
31*d28fae97SViral B. Shahclean:
32*d28fae97SViral B. Shah	rm -fr {./,*}/*{.o,~}
33*d28fae97SViral B. Shah
341ac594e4SViral B. Shahdistclean:
35307d7361SKeno Fischer	rm -f $(OBJS) *.a *.$(SHLIB_EXT)
3656811b08SViral B. Shah	$(MAKE) -C test clean
37