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