home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / os2cl016.zip / makefile < prev    next >
Makefile  |  1996-05-05  |  4KB  |  133 lines

  1. #
  2. #
  3. # pmpp.dll, pmpp.a, pmpp.lib, provadlg.exe makefile
  4. # version 0.16 3-10-1995
  5. # to be used with dmake & gcc/emx 0.9a patchlevel 3
  6. #
  7. CFLAGS=-Zmtd -Zcrtdll -v -Wall -m486          # do NOT put debugging info in dll!
  8. CC=gcc $(CFLAGS)
  9. B=/emx/bin/
  10. I=/emx/include/
  11. IP=/emx/include.cpp/
  12. L=/emx/lib/
  13. DLL=/emx/dll/
  14. LIBS=$(L)crt0.o $(L)mt/c.a $(L)gcc.a
  15. LIBP=$(L)iostream.a
  16. LIBOS2=$(L)os2.a
  17. LIBBSD=$(L)bsd.a
  18.  
  19. .SUFFIXES: .o .c .cc .cpp .s .exe .obj
  20.  
  21. .c.o: 
  22.             $(CC) -c $<
  23.  
  24. .cc.o:
  25.             $(CC) -c $< 
  26.  
  27. .cpp.o:
  28.             $(CC) -c $< 
  29.  
  30. .c.s:
  31.             $(CC) -S $< 
  32.  
  33. .o.exe:
  34.             $(CC) -o $*.exe $< 
  35.  
  36.  
  37. default:        lib
  38.  
  39. all:            examples lib
  40.  
  41. lib:            pmpp.dll pmpp.a
  42.  
  43. examples:        provadlg.exe provadlg.hlp bg_paint.exe
  44.  
  45. clean:
  46.             -del *.o $(DELOPT)
  47.             -del *.exe $(DELOPT)
  48.             -del *.dll $(DELOPT)
  49.             -del *.obj $(DELOPT)
  50.             -del *.map $(DELOPT)
  51.             -del *.msg $(DELOPT)
  52.             -del *.lib $(DELOPT)
  53.             -del *.a $(DELOPT)
  54.  
  55. #############################################################################
  56.  
  57. pmsys.o:          pmsys.cpp pmwin.h pmsys.h $(I)stdlib.h $(I)os2emx.h
  58.         $(CC) -Zdll -c pmsys.cpp
  59.  
  60. pmwin.o:          pmwin.cpp pmwin.h pmgpi.h pmdlg.h pmsys.h $(I)stdio.h $(I)stdlib.h $(I)os2emx.h
  61.         $(CC) -Zdll -c pmwin.cpp
  62.  
  63. pmdlg.o:          pmdlg.cpp pmwin.h pmdlg.h pmsys.h $(I)stdio.h $(I)os2emx.h
  64.         $(CC) -Zdll -c pmdlg.cpp
  65.  
  66. pmgpi.o:          pmgpi.cpp pmwin.h pmgpi.h pmsys.h $(I)stdio.h $(I)os2emx.h
  67.         $(CC) -Zdll -c pmgpi.cpp
  68.  
  69. pmhelp.o:          pmgpi.cpp pmwin.h pmgpi.h pmsys.h pmhelp.h $(I)stdio.h $(I)os2emx.h
  70.         $(CC) -Zdll -c pmhelp.cpp
  71.  
  72. #############################################################################
  73.  
  74. pmpp.def: pmsys.o pmwin.o pmgpi.o pmdlg.o pmhelp.o pmpp.df
  75.         cp pmpp.df pmpp.def
  76.         emxexp -o1 pmsys.o pmwin.o pmgpi.o pmdlg.o pmhelp.o >> pmpp.def
  77.  
  78. pmpp.dll: pmsys.o pmwin.o pmdlg.o pmgpi.o pmhelp.o pmpp.def 
  79.         $(CC) -Zdll -o pmpp.dll pmsys.o pmwin.o pmdlg.o pmgpi.o pmhelp.o pmpp.def
  80.         cp pmpp.dll $(DLL)
  81.  
  82. pmpp.a: pmpp.def
  83.         emximp -o pmpp.imp pmpp.def
  84.         emximp -o pmpp.a pmpp.imp
  85.         cp pmpp.a $(L)
  86.  
  87. # create omf library, for linking with omf obj files. (reduces overhead)
  88. pmpp.lib: pmpp.a
  89.         emxomf -s -l pmpp.a
  90.         cp pmpp.lib $(L)
  91.  
  92. #############################################################################
  93.  
  94. provadlg.o:       provadlg.cpp provadlg.h pmwin.h pmdlg.h pmgpi.h pmsys.h pmhelp.h $(I)stdio.h $(I)os2emx.h
  95.         $(CC) -g -c provadlg.cpp
  96.  
  97. provadlg.res:     provadlg.rc provadlg.h 
  98.         rc -r -i \emx\include provadlg.rc 
  99.  
  100. provadlg:         provadlg.o pmpp.a provadlg.def $(LIBS) $(LIBOS2)
  101.         $(CC) -g -o provadlg provadlg.o pmpp.a provadlg.def
  102.         
  103. provadlg.exe:     provadlg provadlg.res 
  104.         emxbind -bpq -s -rprovadlg.res $(B)emxl provadlg 
  105.  
  106. #
  107. #  You'll need the IPF file pre-processor by Larry Salomon to do this.
  108. #  It can be found on the hobbes archive (ftp-os2.cdrom.com)
  109. #
  110. provadlg.ipf:     provadlg.ipp pmstdres.h provadlg.h
  111.         ipfcpp -i provadlg.ipp -o provadlg.ipf
  112. #
  113. #  You'll need the IPF compiler by IBM. It can be found on the DEVCON CD's
  114. #  or in the Dev. Toolkits.
  115. #
  116. provadlg.hlp:     provadlg.ipf
  117.         ipfc provadlg.ipf
  118.  
  119. #############################################################################
  120.  
  121. bg_paint.o:       bg_paint.cpp bg_paint.h pmwin.h pmdlg.h pmgpi.h pmsys.h pmhelp.h $(I)stdio.h $(I)os2emx.h
  122.         $(CC) -g -c bg_paint.cpp
  123.  
  124. bg_paint.res:     bg_paint.rc bg_paint.h 
  125.         rc -r -x2 -i \emx\include bg_paint.rc 
  126.  
  127. bg_paint:         bg_paint.o pmpp.a bg_paint.def $(LIBS) $(LIBOS2)
  128.         $(CC) -o bg_paint bg_paint.o pmpp.a bg_paint.def
  129.         
  130. bg_paint.exe:     bg_paint bg_paint.res 
  131.         emxbind -bpq -s -rbg_paint.res $(B)emxl bg_paint 
  132.  
  133.