1 | # |
---|
2 | # $Id$ |
---|
3 | # |
---|
4 | # build and install "glommed" librtemsall.a |
---|
5 | # |
---|
6 | |
---|
7 | @SET_MAKE@ |
---|
8 | srcdir = @srcdir@ |
---|
9 | VPATH = @srcdir@ |
---|
10 | RTEMS_ROOT = @top_srcdir@ |
---|
11 | PROJECT_ROOT = @PROJECT_ROOT@ |
---|
12 | |
---|
13 | INSTALL = @INSTALL@ |
---|
14 | |
---|
15 | include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg |
---|
16 | include $(RTEMS_ROOT)/make/lib.cfg |
---|
17 | |
---|
18 | LIB=$(PROJECT_RELEASE)/lib/librtemsall${LIB_VARIANT}.a |
---|
19 | |
---|
20 | SRCS=$(wildcard $(PROJECT_RELEASE)/lib/libbsp$(LIB_VARIANT).a) \ |
---|
21 | $(PROJECT_RELEASE)/lib/librtems$(LIB_VARIANT).a \ |
---|
22 | $(wildcard $(PROJECT_RELEASE)/lib/libposix$(LIB_VARIANT).a) \ |
---|
23 | $(wildcard $(PROJECT_RELEASE)/lib/libnetworking$(LIB_VARIANT).a) \ |
---|
24 | $(wildcard $(PROJECT_RELEASE)/lib/librpc$(LIB_VARIANT).a) \ |
---|
25 | $(wildcard $(PROJECT_RELEASE)/lib/librdbg$(LIB_VARIANT).a) \ |
---|
26 | $(wildcard $(PROJECT_RELEASE)/lib/libcpu$(LIB_VARIANT).a) \ |
---|
27 | $(wildcard $(PROJECT_RELEASE)/lib/librtcio$(LIB_VARIANT).a) \ |
---|
28 | $(wildcard $(PROJECT_RELEASE)/lib/libserialio$(LIB_VARIANT).a) \ |
---|
29 | $(wildcard $(PROJECT_RELEASE)/lib/libnetchip$(LIB_VARIANT).a) \ |
---|
30 | $(PROJECT_RELEASE)/lib/libcsupport$(LIB_VARIANT).a \ |
---|
31 | $(PROJECT_RELEASE)/lib/libmisc$(LIB_VARIANT).a \ |
---|
32 | $(wildcard $(PROJECT_RELEASE)/lib/rtems-ctor$(LIB_VARIANT).o) \ |
---|
33 | $(wildcard $(PROJECT_RELEASE)/lib/libno-ctor$(LIB_VARIANT).a) |
---|
34 | |
---|
35 | CLEAN_ADDITIONS += $(ARCH)/check |
---|
36 | CLOBBER_ADDITIONS += |
---|
37 | |
---|
38 | all: $(ARCH) $(LIB) |
---|
39 | |
---|
40 | install: all |
---|
41 | |
---|
42 | $(ARCH)/check:: $(SRCS) |
---|
43 | @$(RM) $@; touch $@; |
---|
44 | @for f in $(SRCS); do \ |
---|
45 | case $$f in \ |
---|
46 | *.o) echo " `basename $$f`" >> $@ \ |
---|
47 | ;; \ |
---|
48 | *.rel) echo " `basename $$f`" >> $@ \ |
---|
49 | ;; \ |
---|
50 | *.a) \ |
---|
51 | ( list=`$(AR) t $$f`;\ |
---|
52 | for i in $$list; do \ |
---|
53 | if grep " $$i" $@; then \ |
---|
54 | echo "ERROR -- $$i in multiple files"; exit 1; \ |
---|
55 | fi;\ |
---|
56 | echo " $$i" >> $@;\ |
---|
57 | done; ) \ |
---|
58 | ;; \ |
---|
59 | esac; \ |
---|
60 | done; |
---|
61 | |
---|
62 | $(LIB):: $(ARCH)/check |
---|
63 | @for f in $(SRCS); do \ |
---|
64 | case $$f in \ |
---|
65 | *.o) $(AR) ru $@ $$f \ |
---|
66 | ;;\ |
---|
67 | *.rel) $(AR) ru $@ $$f \ |
---|
68 | ;;\ |
---|
69 | *.a) \ |
---|
70 | (cd $(ARCH); \ |
---|
71 | list=`$(AR) t $$f`; \ |
---|
72 | $(AR) x $$f $$list; $(AR) ru $@ $$list; \ |
---|
73 | $(RM) $$list ;)\ |
---|
74 | ;; \ |
---|
75 | esac; \ |
---|
76 | done; |
---|
77 | @$(RANLIB) $@ |
---|
78 | @echo "*** Glommed $@" |
---|