home *** CD-ROM | disk | FTP | other *** search
/ Serving the Web / ServingTheWeb1995.disc1of1.iso / linux / slacksrce / d / libc / libc-4.6 / libc-4 / libc-linux / Makefile < prev    next >
Encoding:
Makefile  |  1994-12-12  |  4.4 KB  |  161 lines

  1. #
  2. # Makefile for the Linux C library
  3. #
  4.  
  5. TOPDIR=.
  6.  
  7. include $(TOPDIR)/Makeconfig
  8.  
  9. ifeq ($(NYS),true)
  10. NYS_DIR_SUFFIX=-nys
  11. endif
  12.  
  13. DEPEND_DIRS= bsd cvt ctype curses-bsd4.4 curses-old db des dirent \
  14.     gdbm  grp inet io libio locale login malloc math misc \
  15.     mntent netgroup posix pwd regex rpc setjmp signal stdlib \
  16.     string sysdeps termcap time ufc compat gcc libbsd \
  17.     malloc-930716 $(YPDIR) $(NLSDIR) elf/d-link
  18.  
  19. CLEAN_DIRS= bsd cvt ctype curses-bsd4.4 curses-old db des dirent \
  20.     gdbm grp inet io libio locale login malloc math misc \
  21.     mntent netgroup posix pwd regex rpc setjmp signal stdlib \
  22.     string sysdeps termcap time ufc compat gcc libbsd \
  23.     malloc-930716 $(YPDIR) $(NLSDIR) sbin jump
  24.  
  25. ifeq ($(LITE),true)
  26. # for light C library without curses, gdbm
  27. DIRS = bsd cvt ctype des dirent grp inet io libio locale login \
  28.     malloc-930716 misc mntent posix pwd regex rpc setjmp signal \
  29.     stdlib string sysdeps termcap time ufc compat gcc # $(YPDIR)
  30. else
  31. ifeq ($(CHECKER),true)
  32. DIRS= bsd cvt ctype des dirent grp inet io \
  33.     libio locale login math misc mntent netgroup posix pwd regex \
  34.     rpc setjmp signal stdlib string sysdeps termcap time ufc \
  35.     gcc libbsd $(YPDIR) $(NLSDIR) gdbm curses-bsd4.4
  36. else
  37. ifeq ($(ELF),true)
  38. DIRS= bsd cvt ctype des dirent grp inet io libbsd libio locale login \
  39.     math misc mntent netgroup posix pwd regex rpc setjmp signal \
  40.     stdlib string sysdeps time ufc malloc malloc-930716 \
  41.     $(YPDIR) $(NLSDIR) gdbm curses-bsd4.4 termcap db elf
  42. else
  43. ifeq ($(MATH),true)
  44. DIRS= math sysdeps
  45. else
  46. DIRS= bsd cvt ctype curses-bsd4.4 curses-old db des dirent gdbm grp \
  47.     inet io \
  48.     libio locale login malloc math misc mntent netgroup posix \
  49.     pwd regex rpc setjmp signal stdlib string sysdeps termcap \
  50.     time ufc compat gcc libbsd malloc-930716 $(YPDIR) $(NLSDIR)
  51. endif
  52. endif
  53. endif
  54. endif
  55.  
  56. ifeq ($(SHARED),true)
  57. ifneq ($(ELF),true)
  58. DIRS:= $(DIRS) jump
  59. CLEAN_DIRS:= $(CLEAN_DIRS) jump
  60. endif
  61. endif
  62.  
  63. all: lib
  64.  
  65. lib:
  66.     for i in $(DIRS); do \
  67.         echo making $@ in $$i; \
  68.         (cd $$i; $(MAKE) $@); \
  69.     done
  70.  
  71. depend:
  72.     for i in $(DEPEND_DIRS); do \
  73.         echo making $@ in $$i; \
  74.         (cd $$i; $(MAKE) $@); \
  75.     done
  76.  
  77. clean realclean:
  78.     $(RM) -f core *.o *.s *.sa *.so.* *.a verify.out
  79.     $(RM) -rf $(OBJS_DIRS)
  80.     for i in $(CLEAN_DIRS); do \
  81.        echo making $@ in $$i; \
  82.        (cd $$i; $(MAKE) $@); \
  83.     done
  84.  
  85. install: install.shared install.static install.debug install.profile
  86.  
  87. install.lite:
  88.     (cd jump; $(MAKE) install LITE=true)
  89.  
  90. install.shared:
  91.     (cd jump; $(MAKE) install)
  92.  
  93. install.static:
  94.     -$(AR) -d static/libc.a __.SYMDEF
  95.     (cd static; $(RM) -rf tmpcopy; $(MKDIR) tmpcopy; \
  96.      cd tmpcopy; \
  97.      $(AR) -x ../../libalias.a; \
  98.      $(AR) $(AR_FLAGS) ../libc.a *.o; \
  99.      $(RM) *; \
  100.      $(AR) -x ../../libmalias.a; \
  101.      $(AR) $(AR_FLAGS) ../libm.a *.o; \
  102.      cd ..; $(RM) -rf tmpcopy; \
  103.      for l in *.a; do \
  104.        $(REALRANLIB) $$l; done; \
  105.      cp *.a crt0.o $(TARGET_LIB_DIR))
  106.     (cd $(TARGET_LIB_DIR); \
  107.      rm -f libdbm.a; \
  108.      ln -sf libgdbm.a libdbm.a)
  109.  
  110. install.debug:
  111.     -$(AR) -d debug/libg.a __.SYMDEF
  112.     (cd debug; $(RM) -rf tmpcopy; $(MKDIR) tmpcopy; \
  113.      cd tmpcopy; \
  114.      $(AR) -x ../../libalias.a; \
  115.      $(AR) $(AR_FLAGS) ../libg.a *.o; \
  116.      cd ..; $(RM) -rf tmpcopy; \
  117.      for l in *.a; do \
  118.        $(REALRANLIB) $$l; done; \
  119.      cp *.a $(TARGET_LIBEXTRA_DIR); \
  120.      cp libc$(NYS_DIR_SUFFIX)/mcheck-init.o $(TARGET_LIBEXTRA_DIR)/libmcheck.a)
  121.  
  122. install.profile:
  123.     -$(AR) -d profile/libc_p.a __.SYMDEF
  124.     (cd profile; $(RM) -rf tmpcopy; $(MKDIR) tmpcopy; \
  125.      cd tmpcopy; \
  126.      $(AR) -x ../../libalias.a; \
  127.      $(AR) $(AR_FLAGS) ../libc_p.a *.o; \
  128.      cd ..; $(RM) -rf tmpcopy; \
  129.      for l in *.a; do \
  130.        $(REALRANLIB) $$l; done; \
  131.      cp *.a gcrt0.o $(TARGET_LIBEXTRA_DIR))
  132.  
  133. install.elf:
  134.     $(MAKE) -C elf install ELF=true
  135.     $(MAKE) install.elf.real ELF=true
  136.  
  137. install.elf.real:
  138.     for l in $(ELF_DEBUG_DIR)/lib*.a $(ELF_PROFILE_DIR)/lib*.a \
  139.         $(ELF_STATIC_DIR)/lib*.a; do \
  140.        $(REALRANLIB) $$l; \
  141.     done
  142.     if [ ! -d  $(TARGET_ELF_LIB_DIR) ]; then \
  143.         $(RM) -f $(TARGET_ELF_LIB_DIR); \
  144.         $(MKDIR) $(TARGET_ELF_LIB_DIR); \
  145.     else true; fi
  146.     if [ ! -d  $(TARGET_ELF_LIBEXTRA_DIR) ]; then \
  147.         $(RM) -f $(TARGET_ELF_LIBEXTRA_DIR); \
  148.         $(MKDIR) $(TARGET_ELF_LIBEXTRA_DIR); \
  149.     else true; fi
  150.     cp $(ELF_STATIC_DIR)/lib*.a $(TARGET_ELF_LIB_DIR)
  151.     cp $(ELF_DEBUG_DIR)/lib*.a $(ELF_PROFILE_DIR)/lib*.a \
  152.         $(ELF_PROFILE_DIR)/*.o $(TARGET_ELF_LIBEXTRA_DIR)
  153.     $(AR) $(AR_FLAGS) $(TARGET_ELF_LIBEXTRA_DIR)/libmcheck.a \
  154.         $(ELF_DEBUG_DIR)/libc/mcheck-init.o
  155.     $(REALRANLIB) $(TARGET_ELF_LIBEXTRA_DIR)/libmcheck.a
  156.     (cd $(TARGET_ELF_LIB_DIR); rm -f libdbm.a; \
  157.      ln -s libgdbm.a libdbm.a)
  158.  
  159. install.checker:
  160.     (cd checker; $(MAKE) install)
  161.