Changeset 4bdebdfe in rtems


Ignore:
Timestamp:
12/13/99 16:16:44 (24 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
38b81b5
Parents:
ad0c286
Message:

Patch rtems-rc-19991203-4.diff from Ralf Corsepius <corsepiu@…>"""
which is an adaptation of a patch from Ian Lance Taylor plus a few
other changes that should significantly speed up building librtemsall.a.

Location:
c/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • c/src/configure.in

    rad0c286 r4bdebdfe  
    4545  cfg_subdirs="$cfg_subdirs librdbg"
    4646fi
     47AM_CONDITIONAL(HAS_NETWORKING, test "$HAS_NETWORKING" = "yes" )
     48AM_CONDITIONAL(HAS_RDBG, test "$HAS_RDBG" = "yes" )
    4749
    4850if test "$RTEMS_HAS_CPLUSPLUS" = "yes"; then
  • c/src/wrapup/Makefile.am

    rad0c286 r4bdebdfe  
    1 #
    2 #  $Id$
    3 #
    4 #  build and install "glommed" librtemsall.a
    5 #
     1##
     2##  $Id$
     3##
     4##  build and install "glommed" librtemsall.a
     5##
    66
    77AUTOMAKE_OPTIONS = foreign 1.4
     
    1313LIB = $(PROJECT_RELEASE)/lib/$(LIBNAME)${LIB_VARIANT}.a
    1414
     15if HAS_NETWORKING
     16LIBNETWORKING = \
     17   $(PROJECT_RELEASE)/lib/libnetworking$(LIB_VARIANT).a \
     18   $(PROJECT_RELEASE)/lib/librpc$(LIB_VARIANT).a
     19endif
     20
     21if HAS_RDBG
     22LIBRDBG = $(PROJECT_RELEASE)/lib/librdbg$(LIB_VARIANT).a
     23endif
     24
    1525SRCS = $(wildcard $(PROJECT_RELEASE)/lib/libbsp$(LIB_VARIANT).a) \
    1626    $(PROJECT_RELEASE)/lib/librtems$(LIB_VARIANT).a \
    1727    $(wildcard $(PROJECT_RELEASE)/lib/libposix$(LIB_VARIANT).a) \
    1828    $(wildcard $(PROJECT_RELEASE)/lib/libitron$(LIB_VARIANT).a) \
    19     $(wildcard $(PROJECT_RELEASE)/lib/libnetworking$(LIB_VARIANT).a) \
    20     $(wildcard $(PROJECT_RELEASE)/lib/librpc$(LIB_VARIANT).a) \
    21     $(wildcard $(PROJECT_RELEASE)/lib/librdbg$(LIB_VARIANT).a) \
     29    $(LIBNETWORKING) \
     30    $(LIBRDBG) \
    2231    $(wildcard $(PROJECT_RELEASE)/lib/libcpu$(LIB_VARIANT).a) \
    2332    $(wildcard $(PROJECT_RELEASE)/lib/librtcio$(LIB_VARIANT).a) \
     
    2837    $(wildcard $(PROJECT_RELEASE)/lib/rtems-ctor$(LIB_VARIANT).o)
    2938
    30 CLEANFILES += $(ARCH)/check
    31 
    3239TMPINSTALL_FILES += \
    3340$(PROJECT_RELEASE)/lib/$(LIBNAME)${LIB_VARIANT}.a
     
    3744install: all
    3845
    39 $(ARCH)/check: $(SRCS)
    40         @$(RM) $@; touch $@;
    41         @for f in $(SRCS); do \
     46$(LIB): $(SRCS)
     47        rm -f $@
     48        rm -rf $(ARCH)/*
     49        for f in $(SRCS); do \
    4250          case $$f in \
    43           *.o)   echo " `basename $$f`" >> $@ \
    44             ;; \
    45           *.rel) echo " `basename $$f`" >> $@ \
     51          *.o | *.rel) \
     52            if test -f $(ARCH)/`basename $$f`; then \
     53              if cmp $$f $(ARCH)/`basename $$f`; then \
     54                true; \
     55              else \
     56                echo 1>&2 "ERROR -- `basename $$f` in multiple files"; \
     57                exit 1; \
     58              fi; \
     59            else \
     60              cp $$f $(ARCH)/; \
     61              chmod a-w $(ARCH)/`basename $$f`; \
     62            fi; \
    4663            ;; \
    4764          *.a) \
    48           ( list=`$(AR) t $$f`;\
    49             for i in $$list; do \
    50               if fgrep " $$i" $@; then \
    51                 echo "ERROR -- $$i in multiple files"; exit 1; \
    52               fi;\
    53               echo " $$i" >> $@;\
    54             done; ) \
     65            (cd $(ARCH); \
     66             $(AR) x ../$$f; \
     67             test $$? -eq 0 || exit 1; \
     68             chmod a-w *; ) \
    5569            ;; \
    5670          esac; \
    57         done;
    58 
    59 $(LIB): $(ARCH)/check
    60         @for f in $(SRCS); do \
    61           case $$f in \
    62           *.o) $(AR) ru $@ $$f \
    63             ;;\
    64           *.rel) $(AR) ru $@ $$f \
    65             ;;\
    66           *.a) \
    67             (cd $(ARCH); \
    68             list=`$(AR) t ../$$f`; \
    69             $(AR) x ../$$f $$list; $(AR) ru ../$@ $$list; \
    70             $(RM) $$list ;)\
    71             ;; \
    72           esac; \
    73         done;
    74         @$(RANLIB) $@
    75         @echo "*** Glommed $@"
     71        done
     72        $(AR) rc $@ $(ARCH)/*
     73        rm -f $(ARCH)/*
     74        $(RANLIB) $@
    7675
    7776include $(top_srcdir)/../../automake/local.am
Note: See TracChangeset for help on using the changeset viewer.