home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / os2 / whch20gr.zip / MAKEFILE < prev    next >
Text File  |  1993-05-03  |  4KB  |  168 lines

  1. # Makefile for which                                       3 May 1993
  2. #
  3. # - for Microsoft C under MS-DOS, version 6.00 or higher
  4. # - for Microsoft C under OS/2 1.x (16-bit), version 6.00 or higher
  5. # - for IBM C/C++ Set/2 under OS/2 2.0 (32-bit)
  6. # - for GNU gcc (emx kit) under OS/2 2.0 (32-bit), version 0.8e or higher
  7. # - for Watcom C/386 under OS/2 2.0 (32-bit), version 9.0 or higher
  8. # - for Borland C++ beta and possibly 1.0 release, under OS/2 2.0
  9. #
  10. # To use, enter "{d,n}make" (only tested with nmake), or "nmake list"
  11. # for list of targets.  Name of makefile must be "makefile".  GNU make
  12. # supposedly works but doesn't always give the correct error messages.
  13. #
  14. # Notes on IBM C Set/2, Watcom C/386, Borland C++ or gcc compilation:
  15. #   The resulting programs can be used under OS/2 protected
  16. #   mode of OS/2 2.0 only, not under 1.x and not under DOS.
  17.  
  18. default:    mscbnd
  19.  
  20. list:
  21.     @echo "Enter $(MAKE) target"
  22.     @echo "where target is one of:"
  23.     @echo "   msc mscdos ibm ibmdyn ibmprof ibmdebug"
  24.     @echo "   watcom gcc gccdyn gccdebug borland"
  25.  
  26. # MSC 6.00 for OS/2 and MS-DOS, 16-bit bound
  27. mscbnd:
  28.     $(MAKE) all \
  29.     CC="cl -nologo -AS -Ocegit -Gs $(FP)" \
  30.     CFLAGS="-Zp1 -DMSC" \
  31.     LDFLAGS="-F 2000 -Lp -Fb" \
  32.     LDFLAGS2="-link /noe /pm:vio" \
  33.     OUT="-Fo" \
  34.     OBJ=".obj" \
  35.     DEF="which.def"
  36.  
  37. # MSC 6.00 cross-compilation for MS-DOS
  38. mscdos:
  39.     $(MAKE) all \
  40.     CC="cl -nologo -AS -Oaict -Gs $(FP)" \
  41.     CFLAGS="-Zp1" \
  42.     LDFLAGS="-F 2000 -Lr -Fe" \
  43.     LDFLAGS2="-link /noe /exe" \
  44.     OUT="-Fo" \
  45.     OBJ=".obj"
  46.  
  47. # MSC 6.00 for OS/2, 16-bit
  48. msc:
  49.     $(MAKE) all \
  50.     CC="cl -nologo -AS -Ocegit -Gs $(FP)" \
  51.     CFLAGS="-G2 -Zp1 -DOS2 -DMSC" \
  52.     LDFLAGS="-F 2000 -Lp -Fe" \
  53.     LDFLAGS2="-link /noe /pm:vio" \
  54.     OUT="-Fo" \
  55.     OBJ=".obj" \
  56.     DEF="which.def"
  57.  
  58. # IBM C Set/2, statically linked runtime
  59. ibm:
  60.     $(MAKE) all \
  61.     CC="icc -Q -O -Gs" \
  62.     CFLAGS="-Sm -Sp1 -DOS2" \
  63.     LDFLAGS="-Fe" \
  64.     LDFLAGS2="" \
  65.     OUT="-Fo" \
  66.     OBJ=".obj" \
  67.     DEF="which.def"
  68.  
  69. # IBM C Set/2, dynamically linked runtime
  70. ibmdyn:
  71.     $(MAKE) all \
  72.     CC="icc -Q -O -Gs -Gd" \
  73.     CFLAGS="-Sm -Sp1 -DOS2" \
  74.     LDFLAGS="-Fe" \
  75.     LDFLAGS2="" \
  76.     OUT="-Fo" \
  77.     OBJ=".obj" \
  78.     DEF="which.def"
  79.  
  80. # IBM C Set/2, debug version
  81. ibmdebug:
  82.     $(MAKE) all \
  83.     CC="icc -Q -Ti" \
  84.     CFLAGS="-Sm -Sp1 -D__DEBUG_ALLOC__ -DOS2" \
  85.     LDFLAGS="-Fe" \
  86.     LDFLAGS2="" \
  87.     OUT="-Fo" \
  88.     OBJ=".obj" \
  89.     DEF="which.def"
  90.  
  91. # IBM C Set/2, profiling version for PROFIT
  92. ibmprof:
  93.     $(MAKE) all \
  94.     CC="icc -Q -O -Gs -Gh -Ti" \
  95.     CFLAGS="-Sm -Sp1 -DOS2" \
  96.     LDFLAGS="-Fe" \
  97.     LDFLAGS2="profit.obj" \
  98.     OUT="-Fo" \
  99.     OBJ=".obj" \
  100.     DEF="which.def"
  101.  
  102. # Watcom C/386 9.0
  103. watcom:
  104.     $(MAKE) all \
  105.     CC="wcl386 -zq -Ox -s" \
  106.     CFLAGS="-Zp1 -DOS2" \
  107.     LDFLAGS="-k0x40000 -x -Fe=" \
  108.     LDFLAGS2="" \
  109.     OUT="-Fo" \
  110.     OBJ=".obj" \
  111.     DEF=""
  112.  
  113. # Borland C++ beta (TOPAZ)
  114. borland:
  115.     $(MAKE) all \
  116.     CC="bcc -O" \
  117.     CFLAGS="-w- -DOS2" \
  118.     LDFLAGS="-e" \
  119.     LDFLAGS2="" \
  120.     OUT="-o" \
  121.     OBJ=".obj" \
  122.     DEF=""
  123.  
  124. # emx 0.8f, gcc, OMF format, statically linked C runtime and emx
  125. gcc:
  126.     $(MAKE) all \
  127.     CC="gcc -Zomf -Zsys -O" \
  128.     CFLAGS="-DOS2" \
  129.     LDFLAGS="-o ./" \
  130.     LDFLAGS2="-s -los2" \
  131.     OUT="-o" \
  132.     OBJ=".obj" \
  133.     DEF="which.def"
  134.  
  135. # emx 0.8f, gcc, OMF format, dynamically linked C runtime and emx
  136. gccdyn:
  137.     $(MAKE) all \
  138.     CC="gcc -Zomf -Zmt -O" \
  139.     CFLAGS="-DOS2" \
  140.     LDFLAGS="-o ./" \
  141.     LDFLAGS2="-s -los2" \
  142.     OUT="-o" \
  143.     OBJ=".obj" \
  144.     DEF="which.def"
  145.  
  146. # emx, gcc, a.out format, with debug info for gdb
  147. gccdebug:
  148.     $(MAKE) all \
  149.     CC="gcc -g" \
  150.     CFLAGS="-DOS2" \
  151.     LDFLAGS="-o ./" \
  152.     LDFLAGS2="-los2" \
  153.     OUT="-o" \
  154.     OBJ=".o"
  155.  
  156. # variables
  157. OBJS  = which$(OBJ)
  158.  
  159. .c$(OBJ):
  160.     $(CC) $(CFLAGS) -c $<
  161.  
  162. all:    which.exe
  163.  
  164. which.exe: $(OBJS) $(DEF)
  165.     $(CC) $(LDFLAGS)$@ $(DEF) $(OBJS) $(LDFLAGS2)
  166.  
  167. which$(OBJ):    which.c
  168.