home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / vos2-121.zip / v / srcos2 / makefile < prev    next >
Makefile  |  1999-02-14  |  12KB  |  391 lines

  1. #===============================================================
  2. # V Libray Build Makefile - Version 1.21 - 12/19/98
  3. #
  4. # For EMX 0.9c or equivalent
  5. # Requires use of Gnu Make or equivalent
  6. #
  7. # Copyright (C) 1995,1996,1997,1998  Bruce E. Wampler, Jon Hacker
  8. #
  9. # Note: Requires unix utilities: rm.exe touch.exe
  10. #
  11. #
  12. # This file is part of the V C++ GUI Framework, and is covered
  13. # under the terms of the GNU Library General Public License,
  14. # Version 2. This library has NO WARRANTY. See the source file
  15. # vapp.cxx for more complete information about license terms.
  16. #===============================================================
  17. #
  18. # Available targets: 
  19. #    
  20. #    all    : vlib
  21. #    vlib    : builds V library
  22. #    vlibgl    : builds V library OpenGL support
  23. #    clean    : removes backup stuff
  24. #
  25. #===============================================================
  26.  
  27. CONFIG = ../Config.mk
  28.  
  29. include $(CONFIG)
  30.  
  31. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  32. #
  33. # fix library name and C/C++ compile options for the library build
  34. #
  35. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  36.  
  37. CFLAGSLIB    = $(CFLAGS)
  38.  
  39. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  40. #
  41. # used to control if compiler output log files are used
  42. #
  43. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  44.  
  45. #LOG = 2>$<.err
  46. LOG = 
  47.  
  48. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  49. #
  50. # Object and header file lists
  51. #
  52. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  53.  
  54. LibGLObjs    =\
  55.     $(oDir)/vbglcnv.o
  56.  
  57. LibObjs    =\
  58.     $(oDir)/vstartup.o \
  59.     $(oDir)/vapp.o \
  60.     $(oDir)/vawinfo.o \
  61.     $(oDir)/vbaseitm.o \
  62.     $(oDir)/vbasewin.o \
  63.     $(oDir)/vboxlblc.o \
  64.     $(oDir)/vbrush.o \
  65.     $(oDir)/vbtncmd.o \
  66.     $(oDir)/vcanvas.o \
  67.     $(oDir)/vchkboxc.o \
  68.     $(oDir)/vcmd.o \
  69.     $(oDir)/vcmdpane.o \
  70.     $(oDir)/vcmdprnt.o \
  71.     $(oDir)/vcmdwin.o \
  72.     $(oDir)/vcolor.o \
  73.     $(oDir)/vcomboc.o \
  74.     $(oDir)/vcpdc.o \
  75.     $(oDir)/vdebug.o \
  76.     $(oDir)/vdialog.o \
  77.     $(oDir)/vfilesel.o \
  78.     $(oDir)/vfinddlg.o \
  79.     $(oDir)/vfont.o \
  80.     $(oDir)/vfontsel.o \
  81.     $(oDir)/vframec.o \
  82.     $(oDir)/vicon.o \
  83.     $(oDir)/vlabelc.o \
  84.     $(oDir)/vlistc.o \
  85.     $(oDir)/vmemdc.o \
  86.     $(oDir)/vmenu.o \
  87.     $(oDir)/vmodald.o \
  88.     $(oDir)/vnotice.o \
  89.     $(oDir)/vos.o \
  90.     $(oDir)/vpen.o \
  91.     $(oDir)/vpopmenu.o \
  92.     $(oDir)/vprogrsc.o \
  93.     $(oDir)/vradioc.o \
  94.     $(oDir)/vreply.o \
  95.     $(oDir)/vsliderc.o \
  96.     $(oDir)/vslist.o \
  97.     $(oDir)/vspinc.o \
  98.     $(oDir)/vtextc.o \
  99.     $(oDir)/vtextcnv.o \
  100.     $(oDir)/vtexted.o \
  101.     $(oDir)/vtextinc.o \
  102.     $(oDir)/vthislst.o \
  103.     $(oDir)/vtimer.o \
  104.     $(oDir)/vutil.o \
  105.     $(oDir)/vwindc.o \
  106.     $(oDir)/vwindow.o \
  107.     $(oDir)/vwinprdc.o \
  108.     $(oDir)/vwinprtr.o \
  109.     $(oDir)/vynreply.o \
  110.     $(oDir)/printf.o
  111.  
  112. BASEDEP =\
  113.     v_defs.h vbaseitm.h vbasewin.h vapp.h vos2.h
  114.  
  115. PANEDEP    =\
  116.     vpane.h vwindow.h
  117.  
  118. CMDDEP    =\
  119.     v_defs.h vdialog.h vcmd.h vcmdprnt.h
  120.  
  121. CMDS    =\
  122.     vbtncmd.h vlabelc.h vlistc.h vframec.h vchkboxc.h vradioc.h \
  123.     vprogrsc.h vsliderc.h vtextinc.h vcomboc.h vtextc.h \
  124.     vcolor.h vpen.h vspinc.h
  125.  
  126.  
  127. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  128. #
  129. # targets
  130. #
  131. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  132.  
  133. .PHONY: default
  134. all: vlib vlibgl
  135.  
  136. .PHONY: cleanwin
  137. cleanwin:
  138.     -rm -f $(CLEANEXTS)
  139.     -rm -f $(HOMEV)/appgen/*.bak
  140.     -rm -f $(HOMEV)/appgen/*.o
  141.     -rm -f $(HOMEV)/appgen/*.obj
  142.     -rm -f $(HOMEV)/appgen/*.exe
  143.     -rm -f $(HOMEV)/draw/*.bak
  144.     -rm -f $(HOMEV)/draw/*.o
  145.     -rm -f $(HOMEV)/draw/*.obj
  146.     -rm -f $(HOMEV)/drawex/*.bak
  147.     -rm -f $(HOMEV)/examp/*.bak
  148.     -rm -f $(HOMEV)/iconed/*.bak
  149.     -rm -f $(HOMEV)/iconed/*.o
  150.     -rm -f $(HOMEV)/iconed/*.obj
  151.     -rm -f $(HOMEV)/iconed/*.exe
  152.     -rm -f $(HOMEV)/icons/*.bak
  153.     -rm -f $(HOMEV)/icons/*.o
  154.     -rm -f $(HOMEV)/icons/*.obj
  155.     -rm -f $(HOMEV)/icons/*.exe
  156.     -rm -f $(HOMEV)/includew/v/*.bak
  157.     -rm -f $(HOMEV)/srcwin/*.bak
  158.     -rm -f $(HOMEV)/texted/*.bak
  159.     -rm -f $(HOMEV)/texted/*.o
  160.     -rm -f $(HOMEV)/texted/*.obj
  161.     -rm -f $(HOMEV)/texted/*.exe
  162.     -rm -f $(HOMEV)/vide/*.bak
  163.     -rm -f $(HOMEV)/vide/*.o
  164.     -rm -f $(HOMEV)/vide/*.obj
  165.     -rm -f $(HOMEV)/vide/*.exe
  166.     -rm -f $(HOMEV)/vrefman/*.bak
  167.     -rm -f $(HOMEV)/test/*.bak
  168.     -rm -f $(HOMEV)/bin/win/*.exe
  169.     -touch $(HOMEV)/bin/win/ThisIs
  170.     -rm -f $(HOMEV)/lib/win/*.exe
  171.     -rm -f $(HOMEV)/lib/win/*.lib
  172.     -touch $(HOMEV)/lib/win/ThisIs
  173.  
  174. .PHONY: clean
  175. clean:
  176.     -rm -f $(CLEANEXTS)
  177.     -rm -f $(oDir)/*.o
  178.  
  179.  
  180. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  181. #
  182. # target for building the v library
  183. #
  184. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  185. .PHONY:    vlibgl
  186. vlibgl:    $(LibDir)/$(LIBNAME)gl.a $(oDir)/vos2.res
  187.  
  188. .PHONY:    vlib
  189. vlib:    $(LibDir)/$(LIBNAME).a $(oDir)/vos2.res
  190.  
  191. $(LibDir)/$(LIBNAME).a:    $(LibObjs)
  192. #    rm -f $(LibDir)/$(LIBNAME).a
  193.     $(AR) cr $(LibDir)/$(LIBNAME).a $(LibObjs) 
  194.     $(RANLIB) $(LibDir)/$(LIBNAME).a
  195.  
  196. $(LibDir)/$(LIBNAME)gl.a:    $(LibGLObjs)
  197. #    rm -f $(LibDir)/$(LIBNAME)gl.a
  198.     $(AR) cr $(LibDir)/$(LIBNAME)gl.a $(LibGLObjs)
  199.     $(RANLIB) $(LibDir)/$(LIBNAME)gl.a
  200.  
  201.  
  202. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  203. #
  204. #    .o's for the library
  205. #
  206. #  note: $@ gives target ($(oDir)/xx.o, 
  207. #    $< gives first dependency (xx.cpp)
  208. #    $(CXX) -c $(CFLAGS) -o $@ $<
  209. #
  210. #xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  211.  
  212. $(oDir)/vapp.o:       vapp.cpp $(BASEDEP) vfont.h vawinfo.h vcmdwin.h
  213.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  214.  
  215. $(oDir)/vawinfo.o:    vawinfo.cpp $(BASEDEP) vawinfo.h
  216.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  217.  
  218. $(oDir)/vbaseitm.o:   vbaseitm.cpp vbaseitm.h v_defs.h
  219.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  220.  
  221. $(oDir)/vbasewin.o:   vbasewin.cpp $(BASEDEP)
  222.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  223.  
  224. $(oDir)/vbglcnv.o:   vbglcnv.cpp vbglcnv.h vcanvas.h vcpdc.h \
  225.       $(BASEDEP) $(PANEDEP)
  226.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  227.  
  228. $(oDir)/vboxlblc.o:   vboxlblc.cpp $(BASEDEP) vboxlblc.h vcmdprnt.h
  229.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  230.  
  231. $(oDir)/vbrush.o:     vbrush.cpp $(BASEDEP) vbrush.h
  232.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  233.  
  234. $(oDir)/vbtncmd.o:    vbtncmd.cpp vbtncmd.h $(CMDDEP)
  235.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  236.  
  237. $(oDir)/vcanvas.o:    vcanvas.cpp vcanvas.h vfont.h vcpdc.h vbrush.h \
  238.       vpen.h $(BASEDEP) $(PANEDEP)
  239.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  240.  
  241. $(oDir)/vchkboxc.o:   vchkboxc.cpp vchkboxc.h $(CMDDEP)
  242.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  243.  
  244. $(oDir)/vcmd.o:       vcmd.cpp vcmd.h $(BASEDEP) $(PANEDEP)
  245.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  246.  
  247. $(oDir)/vcmdpane.o:   vcmdpane.cpp vcmdpane.h $(BASEDEP) $(PANEDEP)
  248.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  249.  
  250. $(oDir)/vcmdwin.o:    vcmdwin.cpp $(BASEDEP) vwindow.h vpane.h vcmdwin.h
  251.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  252.  
  253. $(oDir)/vcmdprnt.o:   vcmdprnt.cpp $(BASEDEP) vcmdprnt.h $(CMDS)
  254.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  255.  
  256. $(oDir)/vcomboc.o:    vcomboc.cpp vcomboc.h $(CMDDEP)
  257.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  258.  
  259. $(oDir)/vcolor.o:     vcolor.cpp vcolor.h $(CMDDEP)
  260.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  261.  
  262. $(oDir)/vdebug.o:     vdebug.cpp vdebug.h $(BASEDEP) vcmdprnt.h vmodald.h
  263.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  264.  
  265. $(oDir)/vdialog.o:    vdialog.cpp vdialog.h $(BASEDEP) vcmdprnt.h
  266.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  267.  
  268. $(oDir)/vcpdc.o:      vcpdc.cpp vdc.h vcpdc.h vpen.h $(BASEDEP)
  269.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  270.  
  271. $(oDir)/vpsdc.o:      vpsdc.cpp vdc.h vpsdc.h vprinter.h vpsprntr.h $(BASEDEP)
  272.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  273.  
  274. $(oDir)/vfilesel.o:   vfilesel.cpp vfilesel.h $(BASEDEP) vcmdprnt.h \
  275.       vmodald.h
  276.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  277.  
  278. $(oDir)/vfinddlg.o:   vfinddlg.cpp vfinddlg.h $(BASEDEP) vcmdprnt.h \
  279.       vmodald.h
  280.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  281.  
  282. $(oDir)/vfontsel.o:   vfontsel.cpp vfontsel.h vfont.h $(BASEDEP) vcmdprnt.h \
  283.       vmodald.h
  284.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  285.  
  286. $(oDir)/vfont.o:      vfont.cpp vfont.h $(BASEDEP)
  287.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  288.  
  289. $(oDir)/vframec.o:    vframec.cpp vframec.h $(CMDDEP)
  290.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  291.  
  292. $(oDir)/vicon.o:      vicon.cpp vicon.h $(CMDDEP)
  293.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  294.  
  295. $(oDir)/vlabelc.o:    vlabelc.cpp vlabelc.h $(CMDDEP)
  296.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  297.  
  298. $(oDir)/vlistc.o:     vlistc.cpp vlistc.h $(CMDDEP)
  299.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  300.  
  301. $(oDir)/vmemdc.o:     vmemdc.cpp vmemdc.h vdc.h vpen.h vpen.h $(BASEDEP)
  302.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  303.  
  304. $(oDir)/vmenu.o:      vmenu.cpp vmenu.h $(BASEDEP) $(PANEDEP) vcmdwin.h
  305.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  306.  
  307. $(oDir)/vmodald.o:    vmodald.cpp vmodald.h vdialog.h \
  308.       $(BASEDEP) vcmdprnt.h
  309.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  310.  
  311. $(oDir)/vnotice.o:    vnotice.cpp vnotice.h $(BASEDEP) vcmdprnt.h \
  312.       vmodald.h
  313.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  314.  
  315. $(oDir)/vos.o:       vos.cpp vos.h $(BASEDEP)
  316.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  317.  
  318. $(oDir)/vpen.o:       vpen.cpp vpen.h $(BASEDEP)
  319.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  320.  
  321. $(oDir)/vpopmenu.o:   vpopmenu.cpp vpopmenu.h $(CMDDEP)
  322.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  323.  
  324. $(oDir)/vprogrsc.o:   vprogrsc.cpp vprogrsc.h $(CMDDEP)
  325.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  326.  
  327. $(oDir)/vpsprntr.o:   vpsprntr.cpp vpsprntr.h vprinter.h $(BASEDEP)
  328.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  329.  
  330. $(oDir)/vradioc.o:    vradioc.cpp vradioc.h $(CMDDEP)
  331.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  332.  
  333. $(oDir)/vsliderc.o:   vsliderc.cpp vsliderc.h $(CMDDEP)
  334.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  335.  
  336. $(oDir)/vslist.o:   vslist.cpp vslist.h
  337.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  338.  
  339. $(oDir)/vreply.o:     vreply.cpp vreply.h $(BASEDEP) vcmdprnt.h vmodald.h
  340.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  341.  
  342. $(oDir)/vspinc.o:     vspinc.cpp vspinc.h $(CMDDEP)
  343.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  344.  
  345. $(oDir)/vstartup.o:     vstartup.cpp vapp.h
  346.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  347.  
  348. $(oDir)/vtextc.o:     vtextc.cpp vtextc.h $(CMDDEP)
  349.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  350.  
  351. $(oDir)/vtextcnv.o:   vtextcnv.cpp vtextcnv.h vcanvas.h vcpdc.h \
  352.       $(BASEDEP) $(PANEDEP)
  353.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  354.  
  355. $(oDir)/vtexted.o:    vtexted.cpp vtexted.h vtextcnv.h vcanvas.h vcpdc.h \
  356.       $(BASEDEP) $(PANEDEP)
  357.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  358.  
  359. $(oDir)/vtextinc.o:   vtextinc.cpp vtextinc.h $(CMDDEP)
  360.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  361.  
  362. $(oDir)/vthislst.o:   vthislst.cpp vthislst.h vwin32.h
  363.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  364.  
  365. $(oDir)/vtimer.o:     vtimer.cpp vtimer.h vapp.h
  366.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  367.  
  368. $(oDir)/vutil.o:      vutil.cpp vutil.h
  369.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  370.  
  371. $(oDir)/vwindc.o:     vwindc.cpp $(BASEDEP) vwindc.h vmemdc.h vcanvas.h vicon.h
  372.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  373.  
  374. $(oDir)/vwindow.o:    vwindow.cpp $(BASEDEP) vwindow.h vpane.h
  375.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  376.  
  377. $(oDir)/vwinprdc.o:   vwinprdc.cpp $(BASEDEP) vwinprdc.h
  378.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  379.  
  380. $(oDir)/vwinprtr.o:   vwinprtr.cpp $(BASEDEP) vwinprtr.h
  381.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  382.  
  383. $(oDir)/vynreply.o:   vynreply.cpp vynreply.h $(BASEDEP) vcmdprnt.h vmodald.h
  384.     $(CXX) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  385.  
  386. $(oDir)/printf.o:   printf.c 
  387.     $(CC) -c $(CFLAGSLIB) -o $@ $< $(LOG)
  388.  
  389. $(oDir)/vos2.res:   vos2.rc vApp.ico collate.bmp
  390.     $(RES) $< $@ $(LOG)
  391.