home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Spezial / SPEZIAL2_97.zip / SPEZIAL2_97.iso / ANWEND / ONLINE / ELM23-2 / ELM23-2.ZIP / utils / Makefile < prev    next >
Makefile  |  1996-07-31  |  4KB  |  141 lines

  1. #
  2. #  Makefile for the Elm system utilities for OS/2
  3. #
  4.  
  5. release:
  6.     $(MAKE) all CC="gcc -O -Zomf" O=".obj" \
  7.     CFLAGS="" LFLAGS="-s -Zcrtdll" LIBS="../os2/elm.def"
  8.  
  9. debug:
  10.     $(MAKE) all CC="gcc -g" O=".o" \
  11.     CFLAGS="" LFLAGS="" LIBS="../os2/elm.def"
  12.  
  13. # Variables
  14.  
  15. INCLDIR        = ../hdrs
  16. OS2DIR        = ../os2
  17. DEFINES        = -DOS2 -I$(INCLDIR) -I$(OS2DIR)
  18. RM        = rm -f
  19. TOUCH        = touch
  20.  
  21. # Lists
  22.  
  23. BINARY_LIST    = answer.exe arepdaemon.exe autoreply.exe fastmail.exe \
  24.     from.exe listalias.exe newalias.exe newmail.exe readmsg.exe \
  25.     rcvmail.exe sndmail.exe
  26.  
  27. OS2_OBJ        = getopt$O os2util$O # movemail$O
  28. UTIL_OBJ    = answer$O arepdaem$O autoreply$O expand$O \
  29.     fastmail$O from$O listalias$O newalias$O newmail$O readmsg$O \
  30.     opt_utils$O string2$O validname$O errno$O
  31.  
  32. # Lists of source and object files for each C program
  33.  
  34. ANSWER_OBJ    = answer$O opt_utils$O string2$O $(OS2_OBJ)
  35. AREPDAEMON_OBJ    = arepdaem$O opt_utils$O errno$O $(OS2_OBJ)
  36. AUTOREPLY_OBJ    = autoreply$O opt_utils$O $(OS2_OBJ)
  37. FASTMAIL_OBJ    = fastmail$O opt_utils$O $(OS2_OBJ)
  38. FRM_OBJ        = from$O expand$O opt_utils$O string2$O $(OS2_OBJ)
  39. LISTALIAS_OBJ    = listalias$O $(OS2_OBJ)
  40. NEWALIAS_OBJ    = newalias$O validname$O opt_utils$O string2$O $(OS2_OBJ)
  41. NEWMAIL_OBJ    = newmail$O expand$O opt_utils$O string2$O $(OS2_OBJ)
  42. READMSG_OBJ    = readmsg$O expand$O opt_utils$O string2$O $(OS2_OBJ)
  43. RCVMAIL_OBJ     = rcvmail$O $(OS2_OBJ)
  44. SNDMAIL_OBJ     = sndmail$O $(OS2_OBJ)
  45.  
  46. # Standard targets
  47.  
  48. all:        $(BINARY_LIST)
  49.  
  50. #    This unusual target enables highly efficial compilation of object files
  51. #    on systems that have the parallel make feature.
  52.  
  53. objects:    $(UTIL_OBJ) $(OS2_OBJ)
  54.  
  55. clean:            
  56.         $(RM) $(UTIL_OBJ) $(BINARY_LIST)
  57.  
  58. # Dependencies and rules for compiling C programs
  59.  
  60. .SUFFIXES: .c $O
  61.  
  62. .c$O:
  63.         $(CC) $(CFLAGS) $(DEFINES) -c $<
  64.  
  65. # Dependencies and rules
  66.  
  67. .PRECIOUS:    $(INCLDIR)/defs.h $(INCLDIR)/elm.h $(INCLDIR)/headers.h
  68.  
  69. answer.exe:    $(ANSWER_OBJ)
  70.         $(CC) $(LFLAGS) -o $@ $(ANSWER_OBJ) $(LIBS)
  71.  
  72. arepdaemon.exe:    $(AREPDAEMON_OBJ)
  73.         $(CC) $(LFLAGS) -o $@ $(AREPDAEMON_OBJ) $(LIBS)
  74.  
  75. autoreply.exe:    $(AUTOREPLY_OBJ)
  76.         $(CC) $(LFLAGS) -o $@ $(AUTOREPLY_OBJ) $(LIBS)
  77.  
  78. fastmail.exe:    $(FASTMAIL_OBJ)
  79.         $(CC) $(LFLAGS) -o $@ $(FASTMAIL_OBJ) $(LIBS)
  80.  
  81. from.exe:    $(FRM_OBJ)
  82.         $(CC) $(LFLAGS) -o $@ $(FRM_OBJ) $(LIBS)
  83.  
  84. listalias.exe:    $(LISTALIAS_OBJ)
  85.         $(CC) $(LFLAGS) -o $@ $(LISTALIAS_OBJ) $(LIBS)
  86.  
  87. newalias.exe:    $(NEWALIAS_OBJ)
  88.         $(CC) $(LFLAGS) -o $@ $(NEWALIAS_OBJ) $(LIBS)
  89.  
  90. newmail.exe:    $(NEWMAIL_OBJ)
  91.         $(CC) $(LFLAGS) -o $@ $(NEWMAIL_OBJ) $(LIBS)
  92.  
  93. readmsg.exe:    $(READMSG_OBJ)
  94.         $(CC) $(LFLAGS) -o $@ $(READMSG_OBJ) $(LIBS)
  95.  
  96. rcvmail.exe:    $(RCVMAIL_OBJ)
  97.         $(CC) $(LFLAGS) -o $@ $(RCVMAIL_OBJ) $(LIBS)
  98.  
  99. sndmail.exe:    $(SNDMAIL_OBJ)
  100.         $(CC) $(LFLAGS) -o $@ $(SNDMAIL_OBJ) $(LIBS)
  101.  
  102. # Dependencies of header files upon other header files they include
  103.  
  104. $(INCLDIR)/defs.h:    $(INCLDIR)/../config.h $(INCLDIR)/sysdefs.h
  105.             $(TOUCH) $@
  106.  
  107. $(INCLDIR)/elm.h:    $(INCLDIR)/curses.h $(INCLDIR)/defs.h
  108.             $(TOUCH) $@
  109.  
  110. $(INCLDIR)/headers.h:    $(INCLDIR)/curses.h $(INCLDIR)/defs.h
  111.             $(TOUCH) $@
  112.  
  113. # Dependencies of C object files
  114.  
  115. answer$O:    $(INCLDIR)/defs.h
  116. arepdaem$O:    $(INCLDIR)/defs.h
  117. autoreply$O:    $(INCLDIR)/defs.h
  118. expand$O:    $(INCLDIR)/defs.h
  119. fastmail$O:    $(INCLDIR)/defs.h $(INCLDIR)/patchlevel.h
  120. from$O:        $(INCLDIR)/defs.h
  121. listalias$O:    $(INCLDIR)/defs.h $(INCLDIR)/sysdefs.h
  122. newalias$O:    $(INCLDIR)/defs.h $(INCLDIR)/sysdefs.h
  123. newmail$O:    $(INCLDIR)/defs.h
  124. readmsg$O:    $(INCLDIR)/defs.h
  125.  
  126. errno$O:    ../src/errno.c $(INCLDIR)/headers.h
  127.         $(CC) $(CFLAGS) $(DEFINES) -c ../src/errno.c
  128. opt_utils$O:    ../src/opt_utils.c $(INCLDIR)/headers.h
  129.         $(CC) $(CFLAGS) $(DEFINES) -c ../src/opt_utils.c
  130. string2$O:    ../src/string2.c $(INCLDIR)/headers.h
  131.         $(CC) $(CFLAGS) $(DEFINES) -c ../src/string2.c
  132. validname$O:    ../src/validname.c $(INCLDIR)/headers.h
  133.         $(CC) $(CFLAGS) $(DEFINES) -c ../src/validname.c
  134.  
  135. getopt$O:    $(OS2DIR)/getopt.c
  136.         $(CC) $(CFLAGS) $(DEFINES) -c $(OS2DIR)/getopt.c
  137. os2util$O:    $(OS2DIR)/os2util.c
  138.         $(CC) $(CFLAGS) $(DEFINES) -c $(OS2DIR)/os2util.c
  139. movemail$O:    $(OS2DIR)/movemail.c
  140.         $(CC) $(CFLAGS) $(DEFINES) -c $(OS2DIR)/movemail.c
  141.