# Makefile for JLib, John Fairhurst Friday 05 June 1998
#
# Attempt to support emx too (be afraid...)
#
# Set the environment variable JLIB_BUILD_MODE=EMX to do this.
#
# The other important thing is exception support: set the environment
# variable JLIB_EXCEPTIONS=NO to disable.  Currently emx builds with
# exception support don't work.
#
# If you want a debug build, set JLIB_DEBUG=YES
#
# And so, defaults to a normal build: NO debug info
#                                     VACPP compiled
#                                     REAL exceptions enabled


SHELL=gbash.exe

all: dll/jlib0150.dll lib/jlib0150.lib dll/jlibres.dll

ifeq ($(JLIB_BUILD_MODE),EMX)

CFLAGS=-c -Wall -Zcrtdll -Zomf -Zmtd -Zdll -Zstack 0x2000 -DOS2EMX_PLAIN_CHAR -Iinclude/sys
LINKOPTS=-Wall -Zcrtdll -Zomf -Zmtd -Zdll -Zstack 0x2000 -DOS2EMX_PLAIN_CHAR -o$@

ifneq ($(JLIB_EXCEPTIONS),NO)
#they want exceptions (erm)
CFLAGS += -fhandle-exceptions -frtti -DREALLY_THROW_EXCEPTIONS
LINKOPTS += -lstdcpp
endif

ifeq ($(JLIB_DEBUG),YES)
CFLAGS += -g
LINKOPTS += -g
else
CFLAGS += -s
LINKOPTS += -s
endif

else

CFLAGS=/Ge- /Gm+ /Gd+ /Ti /Tx /C+ /G5 /Q+ -Iinclude/sys
LINKOPTS=/E:2 /A:2 /NOL /NOI /out:$@

ifeq ($(JLIB_DEBUG),YES)
LINKOPTS += /de
endif

ifeq ($(JLIB_EXCEPTIONS),NO)
#no exceptions
CFLAGS += /Gx+
else
#yes exceptions
CFLAGS += -DREALLY_THROW_EXCEPTIONS
endif

endif

res/jlib.res: res/jlib.rc res/jlib.dlg include/sys/jlibres.h
	rc -r res/jlib.rc $@

dll/jlibres.dll: res/dummy.obj res/jlib.res def/jlibres.def
ifeq ($(JLIB_BUILD_MODE),EMX)
	@cmd /c mkres
else
	ilink $(LINKOPTS) /Dll res/dummy.obj
endif
	rc res/jlib.res $@

lib/jlib0150.lib: dll/jlib0150.dll
# this is built by the dll target under emx
	stop

OBJS=obj/jpm.obj obj/jthread.obj obj/jwindow.obj obj/jcoord.obj       \
	obj/jpainth.obj obj/jctlh.obj obj/jcontrol.obj obj/jframe.obj      \
	obj/jthreadi.obj obj/jmodule.obj obj/jmother.obj obj/jcmdh.obj     \
	obj/jdialog.obj obj/jwcursor.obj obj/jprofile.obj obj/jcolour.obj  \
	obj/jstr.obj obj/jmenu.obj obj/jpointer.obj obj/jicon.obj          \
	obj/jaccel.obj obj/jtoolbar.obj obj/jstatbar.obj obj/jsystem.obj   \
	obj/jstatict.obj obj/jswp.obj obj/jbitmap.obj obj/jstaticg.obj     \
	obj/jgrpbox.obj obj/jborder.obj obj/jbutton.obj obj/jselbutt.obj   \
	obj/jpushbut.obj obj/jgbutton.obj obj/jcusbutt.obj obj/jentfld.obj \
	obj/jmle.obj obj/jcanvas.obj obj/jlistbox.obj obj/jownerdh.obj     \
	obj/jcstlbox.obj obj/jmsgfile.obj obj/jtrace.obj obj/jexcept.obj   \
	obj/jscrlbar.obj obj/jintern.obj obj/jviewer.obj obj/jposnh.obj    \
	obj/jscrollh.obj obj/jkeyh.obj obj/jmutex.obj obj/jevsem.obj       \
	obj/jstream.obj obj/jstrcli.obj obj/jdttime.obj obj/jbfile.obj     \
	obj/jfile.obj obj/jbnpipe.obj obj/jnpipes.obj obj/jpipe.obj        \
	obj/jfind.obj obj/jcbox.obj obj/jspinbut.obj obj/jcnr.obj          \
	obj/jcnrrec.obj obj/jcnrcol.obj obj/jcnrh.obj obj/jdragset.obj     \
	obj/jdrag.obj obj/jdrgitem.obj obj/jdragh.obj obj/jdroph.obj       \
	obj/jdrgxfer.obj obj/jsavedlg.obj obj/jwrap.obj obj/jcnrodh.obj    \
	obj/jmsgbox.obj obj/jdlgbar.obj obj/jmouseh.obj obj/jhelp.obj      \
	obj/jfocush.obj obj/jnotebk.obj obj/jdc.obj obj/jpspace.obj        \
	obj/jfont.obj obj/jatoms.obj obj/jglprim.obj obj/jgprim.obj        \
	obj/jvset.obj obj/jopendlg.obj obj/jmwindow.obj obj/jslider.obj    \
	obj/jshared.obj obj/jcolln.obj obj/jfrmectl.obj obj/jsplit.obj

# this is a mess, I know.  But it works
dll/jlib0150.dll: $(OBJS) def/jlib.def
ifeq ($(JLIB_BUILD_MODE),EMX)
	cp def/jlib.def def/jlibwrk.def
	emxexp $(OBJS) >> def/jlibwrk.def
	gcc $(LINKOPTS) $(OBJS) def/jlibwrk.def -los2me
	emximp -o lib/jlib0150.lib def/jlibwrk.def
else
	cppfilt -b -p -q obj/*.obj > pubdefs
	cat def/jlib.def pubdefs > def/jlibwrk.def
	ilink $(LINKOPTS) $(OBJS) mmpm2.lib def/jlibwrk.def
	implib /nol lib/jlib0150.lib def/jlibwrk.def
	rm pubdefs
endif
	rm def/jlibwrk.def

obj/%.obj : c/%.cpp
ifeq ($(JLIB_BUILD_MODE),EMX)
	gcc $(CFLAGS) -o$@ $<
else
	icc $(CFLAGS) /Fo$@ $<
endif

obj/jpm.obj: c/jpm.cpp include/jpm.hpp include/jthreadi.hpp include/jwindow.hpp include/jhashtbl.hpp include/jsafeht.hpp include/jmutex.hpp
obj/jthread.obj: c/jthread.cpp include/jthread.hpp include/jevsem.hpp include/jwindow.hpp include/jevent.hpp include/jhandler.hpp
obj/jthreadi.obj: c/jthreadi.cpp include/jthreadi.hpp
obj/jcoord.obj: c/jcoord.cpp include/jcoord.hpp include/jexcept.hpp
obj/jwindow.obj: c/jwindow.cpp include/jwindow.hpp include/jhandler.hpp include/jcoord.hpp include/jevent.hpp include/jcontrol.hpp include/jctlh.hpp include/jpm.hpp include/jcolour.hpp include/jstr.hpp include/jcolln.hpp \
	include/jmparam.hpp include/jsystem.hpp include/jpointer.hpp include/jswp.hpp include/jmsgh.hpp include/jpspace.hpp include/jfont.hpp include/jbag.hpp include/jhashtbl.hpp \
	include/jsafeht.hpp include/jthread.hpp include/jevsem.hpp include/jmutex.hpp include/sys/jintern.hpp
obj/jpainth.obj: c/jpainth.cpp include/jpainth.hpp include/jevent.hpp include/jcoord.hpp include/jwindow.hpp include/jhandler.hpp include/jpspace.hpp
obj/jctlh.obj: c/jctlh.cpp include/jctlh.hpp include/jevent.hpp include/jhandler.hpp
obj/jcontrol.obj: c/jcontrol.cpp include/jcontrol.hpp include/jwindow.hpp include/jctlh.hpp
obj/jframe.obj: c/jframe.cpp include/jframe.hpp include/jwindow.hpp include/jpm.hpp include/jmother.hpp include/jfrmectl.hpp include/jcoord.hpp include/sys/jintern.hpp include/jevent.hpp include/jhandler.hpp \
	include/jswp.hpp include/jfrmectl.hpp include/jtoolbar.hpp
obj/jmodule.obj: c/jmodule.cpp include/jmodule.hpp include/jstr.hpp
obj/jmother.obj: c/jmother.cpp include/jmother.hpp include/jwindow.hpp include/jprofile.hpp include/jcoord.hpp include/jmenu.hpp include/jaccel.hpp include/jicon.hpp include/jmparam.hpp include/jpm.hpp include/jstr.hpp include/jcmdh.hpp \
	include/jevent.hpp include/jresid.hpp include/jsystem.hpp include/jhelp.hpp include/jfocush.hpp
obj/jcmdh.obj: c/jcmdh.cpp include/jcmdh.hpp include/jevent.hpp include/jhandler.hpp
obj/jdialog.obj: c/jdialog.cpp include/jdialog.hpp include/jwindow.hpp include/jmodule.hpp include/jmother.hpp include/jresid.hpp include/jcoord.hpp include/sys/jintern.hpp include/jsystem.hpp include/jframe.hpp
obj/jwcursor.obj: c/jwcursor.cpp include/jwindow.hpp
obj/jprofile.obj: c/jprofile.cpp include/jprofile.hpp include/jpm.hpp include/jstr.hpp
obj/jcolour.obj: c/jcolour.cpp include/jcolour.hpp include/jwindow.hpp
obj/jstr.obj: c/jstr.cpp include/jstr.hpp include/jbuffer.hpp include/jmodule.hpp include/jpm.hpp include/jresid.hpp
obj/jmenu.obj: c/jmenu.cpp include/jmenu.hpp include/jwindow.hpp include/jmodule.hpp include/jstr.hpp include/jcoord.hpp include/jpointer.hpp include/jmparam.hpp include/jresid.hpp include/jbitmap.hpp include/sys/jintern.hpp
obj/jpointer.obj: c/jpointer.cpp include/jpointer.hpp include/jwindow.hpp include/jcoord.hpp include/jicon.hpp
obj/jicon.obj: c/jicon.cpp include/jicon.hpp include/jcoord.hpp include/jwindow.hpp include/jmodule.hpp include/jresid.hpp
obj/jaccel.obj: c/jaccel.cpp include/jaccel.hpp include/jmodule.hpp include/jpm.hpp include/jresid.hpp include/jkeyh.hpp
obj/jtoolbar.obj: c/jtoolbar.cpp include/jtoolbar.hpp include/jfrmectl.hpp include/jwindow.hpp include/jmenu.hpp include/jmother.hpp include/jswp.hpp include/jresid.hpp include/jcoord.hpp
obj/jstatbar.obj: c/jstatbar.cpp include/jstatbar.hpp include/jfrmectl.hpp include/jwindow.hpp include/jmother.hpp include/jsystem.hpp include/jstatict.hpp include/jswp.hpp include/jcoord.hpp
obj/jsystem.obj: c/jsystem.cpp include/jsystem.hpp include/jstr.hpp include/jcoord.hpp include/jpm.hpp include/jwindow.hpp include/jpspace.hpp include/jdc.hpp include/jbitmap.hpp include/jgprim.hpp include/jkeyh.hpp include/jprofile.hpp
obj/jstatict.obj: c/jstatict.cpp include/jstatict.hpp include/jwindow.hpp include/jcoord.hpp include/jcontrol.hpp include/sys/jintern.hpp
obj/jswp.obj: c/jswp.cpp include/jswp.hpp include/jcoord.hpp include/jwindow.hpp include/jseq.hpp
obj/jbitmap.obj: c/jbitmap.cpp include/jbitmap.hpp include/jcoord.hpp include/jwindow.hpp include/jmodule.hpp include/jresid.hpp include/jpspace.hpp include/jgprim.hpp include/jfile.hpp include/jbuffer.hpp include/jdc.hpp include/jglprim.hpp \
	include/jcolour.hpp include/jseq.hpp
obj/jstaticg.obj: c/jstaticg.cpp include/jstaticg.hpp include/jwindow.hpp include/jcoord.hpp include/jstr.hpp include/jbitmap.hpp include/jicon.hpp include/jcontrol.hpp include/sys/jintern.hpp
obj/jgrpbox.obj: c/jgrpbox.cpp include/jgrpbox.hpp include/jcoord.hpp include/jwindow.hpp include/jcontrol.hpp include/sys/jintern.hpp
obj/jborder.obj: c/jborder.cpp include/jborder.hpp include/jcoord.hpp include/jwindow.hpp include/jcontrol.hpp include/jcolour.hpp include/jpspace.hpp include/sys/jintern.hpp include/jhandler.hpp include/jpainth.hpp include/jevent.hpp
obj/jbutton.obj: c/jbutton.cpp include/jbutton.hpp include/jcontrol.hpp include/jcoord.hpp include/jctlh.hpp include/jwindow.hpp include/sys/jintern.hpp
obj/jselbutt.obj: c/jselbutt.cpp include/jselbutt.hpp include/jbutton.hpp include/jcoord.hpp include/jwindow.hpp
obj/jpushbut.obj: c/jpushbut.cpp include/jpushbut.hpp include/jbutton.hpp include/jcoord.hpp include/jwindow.hpp
obj/jcusbutt.obj: c/jcusbutt.cpp include/jcusbutt.hpp include/jpushbut.hpp include/jcoord.hpp include/jctlh.hpp include/jwindow.hpp include/jpspace.hpp
obj/jentfld.obj: c/jentfld.cpp include/jentfld.hpp include/jcoord.hpp include/jstr.hpp include/jwindow.hpp include/jctlh.hpp include/jmparam.hpp include/sys/jintern.hpp
obj/jmle.obj: c/jmle.cpp include/jmle.hpp include/jcoord.hpp include/jstr.hpp include/jcontrol.hpp include/jwindow.hpp include/jctlh.hpp include/jmparam.hpp include/sys/jintern.hpp
obj/jcanvas.obj: c/jcanvas.cpp include/jcanvas.hpp include/jwindow.hpp include/jcontrol.hpp include/jcoord.hpp include/jpainth.hpp include/sys/jintern.hpp include/jevent.hpp include/jbitmap.hpp include/jdc.hpp include/jpspace.hpp include/jgprim.hpp
obj/jlistbox.obj: c/jlistbox.cpp include/jlistbox.hpp include/jwindow.hpp include/jcontrol.hpp include/jcoord.hpp include/jctlh.hpp include/jmparam.hpp include/jstr.hpp include/jpspace.hpp include/sys/jintern.hpp include/jseq.hpp include/jcolln.hpp
obj/jownerdh.obj: c/jownerdh.cpp include/jownerdh.hpp include/jhandler.hpp include/jevent.hpp include/jcoord.hpp include/jpspace.hpp
obj/jcstlbox.obj: c/jcstlbox.cpp include/jcstlbox.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jownerdh.hpp include/jlistbox.hpp
obj/jmsgfile.obj: c/jmsgfile.cpp include/jmsgfile.hpp include/jstr.hpp
obj/jtrace.obj: c/jtrace.cpp include/jtrace.hpp include/jstr.hpp include/jmutex.hpp include/jnpipes.hpp include/jexcept.hpp include/jbuffer.hpp
obj/jexcept.obj: c/jexcept.cpp include/jexcept.hpp include/jstr.hpp include/jtrace.hpp include/jmsgfile.hpp include/jpm.hpp include/jresid.hpp include/sys/jlibres.h
obj/jscrlbar.obj: c/jscrlbar.cpp include/jscrlbar.hpp include/jcoord.hpp include/jcontrol.hpp include/jwindow.hpp include/jmparam.hpp include/sys/jintern.hpp
obj/jintern.obj: c/jintern.cpp include/sys/jintern.hpp include/jpm.hpp include/jthreadi.hpp include/jwindow.hpp include/jcoord.hpp include/jevent.hpp include/jmwindow.hpp
obj/jviewer.obj: c/jviewer.cpp include/jviewer.hpp include/jcontrol.hpp include/jwindow.hpp include/jscrlbar.hpp include/jpainth.hpp include/jevent.hpp include/jhandler.hpp include/jposnh.hpp \
	include/sys/jintern.hpp include/jcolour.hpp include/jsystem.hpp include/jkeyh.hpp include/jmparam.hpp include/jscrollh.hpp
obj/jscrollh.obj: c/jscrollh.cpp include/jscrollh.hpp include/jevent.hpp include/jhandler.hpp
obj/jkeyh.obj: c/jkeyh.cpp include/jkeyh.hpp include/jhandler.hpp include/jevent.hpp
obj/jmutex.obj: c/jmutex.cpp include/jmutex.hpp include/jstr.hpp
obj/jevsem.obj: c/jevsem.cpp include/jevsem.hpp include/jstr.hpp
obj/jstream.obj: c/jstream.cpp include/jstream.hpp include/jexcept.hpp include/jstr.hpp include/jbuffer.hpp include/jpm.hpp
obj/jstrcli.obj: c/jstrcli.cpp include/jstrcli.hpp include/jexcept.hpp include/jstream.hpp
obj/jdttime.obj: c/jdttime.cpp include/jdttime.hpp include/jstr.hpp include/jmutex.hpp include/jprofile.hpp
obj/jbfile.obj: c/jbfile.cpp include/jbfile.hpp include/jstrcli.hpp include/jstream.hpp include/jstr.hpp include/jdttime.hpp include/jicon.hpp include/jexcept.hpp include/jresid.hpp
obj/jfile.obj: c/jfile.cpp include/jfile.hpp include/jbfile.hpp include/jstrcli.hpp include/jstream.hpp
obj/jbnpipe.obj: c/jbnpipe.cpp include/jbnpipe.hpp include/jstream.hpp include/jstrcli.hpp include/jbuffer.hpp include/jstr.hpp include/jevsem.hpp include/jpm.hpp
obj/jnpipes.obj: c/jnpipes.cpp include/jnpipes.hpp include/jbnpipe.hpp include/jstream.hpp include/jstrcli.hpp
obj/jpipe.obj: c/jpipe.cpp include/jpipe.hpp include/jstream.hpp
obj/jfind.obj: c/jfind.cpp include/jfind.hpp include/jstr.hpp
obj/jcbox.obj: c/jcbox.cpp include/jcbox.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jentfld.hpp include/jlistbox.hpp include/jctlh.hpp include/sys/jintern.hpp
obj/jspinbut.obj: c/jspinbut.cpp include/jspinbut.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jctlh.hpp include/jstr.hpp include/sys/jintern.hpp include/jcolln.hpp include/jseq.hpp
obj/jcnr.obj: c/jcnr.cpp include/jcnr.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jctlh.hpp include/jstr.hpp include/jbuffer.hpp include/jcnrrec.hpp include/jcnr2.hpp include/jcnrh.hpp include/jmenu.hpp include/jdrag.hpp \
	include/jdragset.hpp include/jdrgitem.hpp include/jhelp.hpp include/sys/jintern.hpp include/jcolln.hpp include/jseq.hpp
obj/jcnrrec.obj: c/jcnrrec.cpp include/jcnrrec.hpp include/jcnr2.hpp include/jcoord.hpp include/jexcept.hpp include/jdrgitem.hpp include/jdrag.hpp include/jstr.hpp include/jhelp.hpp include/jseq.hpp
obj/jcnrcol.obj: c/jcnrcol.cpp include/jcnrcol.hpp include/jcnr2.hpp include/jcnr.hpp include/jstr.hpp include/jseq.hpp
obj/jcnrh.obj: c/jcnrh.cpp include/jcnrh.hpp include/jhandler.hpp include/jevent.hpp include/jcnr2.hpp include/jcnr.hpp include/jcnrrec.hpp include/jkeyh.hpp include/jdragset.hpp include/jdrgitem.hpp include/jstr.hpp
obj/jdrag.obj: c/jdrag.cpp include/jdrag.hpp include/jcoord.hpp include/jwindow.hpp include/jstr.hpp
obj/jdragset.obj: c/jdragset.cpp include/jdragset.hpp include/jdrag.hpp include/jdrgitem.hpp include/jwindow.hpp include/jsystem.hpp
obj/jdrgitem.obj: c/jdrgitem.cpp include/jdrgitem.hpp include/jdrag.hpp include/jicon.hpp include/jbitmap.hpp include/jstr.hpp include/jwindow.hpp
obj/jdragh.obj: c/jdragh.cpp include/jdragh.hpp include/jhandler.hpp include/jevent.hpp include/jdrag.hpp include/jdragset.hpp include/jdragset.hpp include/jwindow.hpp include/jcoord.hpp
obj/jdroph.obj: c/jdroph.cpp include/jdroph.hpp include/jhandler.hpp include/jevent.hpp include/jdrag.hpp include/jdragset.hpp include/jcoord.hpp
obj/jdrgxfer.obj: c/jdrgxfer.cpp include/jdrgxfer.hpp include/jhandler.hpp include/jevent.hpp include/jdrag.hpp include/jdragset.hpp include/jdrgitem.hpp include/jstr.hpp include/jbuffer.hpp
obj/jsavedlg.obj: c/jsavedlg.cpp include/jsavedlg.hpp include/jdialog.hpp include/jmother.hpp include/jwindow.hpp include/jicon.hpp include/jstaticg.hpp include/jentfld.hpp include/jborder.hpp include/jstr.hpp include/jbuffer.hpp include/jpm.hpp \
	include/jfile.hpp include/jbfile.hpp include/jstream.hpp include/jevent.hpp include/jhandler.hpp include/jdragh.hpp include/jdrgxfer.hpp include/sys/jlibres.h include/jmsgbox.hpp include/jmenu.hpp include/jthread.hpp    include/jcmdh.hpp
obj/jwrap.obj: c/jwrap.cpp include/jwrap.hpp include/jcontrol.hpp include/jwindow.hpp include/jevent.hpp include/jhandler.hpp include/jpainth.hpp include/jstr.hpp include/jbuffer.hpp include/jcolour.hpp include/sys/jintern.hpp include/jpspace.hpp
obj/jcnrodh.obj: c/jcnrodh.cpp include/jcnrodh.hpp include/jcoord.hpp include/jownerdh.hpp include/jhandler.hpp include/jevent.hpp include/jcnr.hpp include/jcnr2.hpp include/jpspace.hpp
obj/jmsgbox.obj: c/jmsgbox.cpp include/jmsgbox.hpp include/jdialog.hpp include/jwindow.hpp include/jmother.hpp include/jwrap.hpp include/jpushbut.hpp include/jcoord.hpp include/jicon.hpp include/jstaticg.hpp include/jmodule.hpp \
	include/sys/jlibres.h include/jsystem.hpp include/jmenu.hpp
obj/jdlgbar.obj: c/jdlgbar.cpp include/jdlgbar.hpp include/jfrmectl.hpp include/jdialog.hpp include/jframe.hpp include/jwindow.hpp include/jswp.hpp include/jcoord.hpp include/jkeyh.hpp include/jborder.hpp
obj/jmouseh.obj: c/jmouseh.cpp include/jmouseh.hpp include/jhandler.hpp include/jevent.hpp include/jcoord.hpp
obj/jhelp.obj: c/jhelp.cpp include/jhelp.hpp include/jwindow.hpp include/jresid.hpp include/jpm.hpp include/jmodule.hpp include/jstr.hpp include/jbuffer.hpp
obj/jfocush.obj: c/jfocush.cpp include/jfocush.hpp include/jhandler.hpp include/jevent.hpp include/jwindow.hpp
obj/jnotebk.obj: c/jnotebk.cpp include/jnotebk.hpp include/jcontrol.hpp include/jwindow.hpp include/jctlh.hpp include/jcoord.hpp include/jstr.hpp include/jbuffer.hpp include/jresid.hpp include/jmodule.hpp include/jhelp.hpp include/jbitmap.hpp \
	include/jcolour.hpp include/jmparam.hpp include/sys/jintern.hpp include/jsystem.hpp
obj/jdc.obj: c/jdc.cpp include/jdc.hpp include/jpm.hpp include/jwindow.hpp include/jcoord.hpp
obj/jpspace.obj: c/jpspace.cpp include/jpspace.hpp include/jdc.hpp include/jwindow.hpp include/jpm.hpp include/jcoord.hpp include/jgprim.hpp include/jglprim.hpp include/jfont.hpp include/jgfx.hpp include/jbitmap.hpp include/jicon.hpp \
	include/jcolour.hpp include/jcolln.hpp include/jset.hpp
obj/jfont.obj: c/jfont.cpp include/jfont.hpp include/jstr.hpp include/jexcept.hpp include/jpspace.hpp include/jwindow.hpp include/jfile.hpp include/jatoms.hpp include/jdc.hpp include/jpm.hpp include/jbuffer.hpp include/jcolln.hpp include/jseq.hpp
obj/jatoms.obj: c/jatoms.cpp include/jatoms.hpp include/jstr.hpp
obj/jgprim.obj: c/jgprim.cpp include/jgprim.hpp include/jstr.hpp include/jcoord.hpp include/jbuffer.hpp include/jpspace.hpp include/jglprim.hpp include/jbitmap.hpp include/jgfx.hpp include/jptr.hpp include/jseq.hpp include/jcolln.hpp
obj/jglprim.obj: c/jglprim.cpp include/jglprim.hpp include/jcolour.hpp include/jcoord.hpp include/jgprim.hpp include/jpspace.hpp include/jbitmap.hpp include/jfont.hpp include/jgfx.hpp
obj/jvset.obj: c/jvset.cpp include/jvset.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jstr.hpp include/jbitmap.hpp include/jicon.hpp include/jcolour.hpp include/jdragset.hpp include/jdrgitem.hpp include/jdrag.hpp \
	include/jhelp.hpp include/jmparam.hpp include/sys/jintern.hpp
obj/jopendlg.obj: c/jopendlg.cpp include/jopendlg.hpp include/jstr.hpp include/jbuffer.hpp include/jthread.hpp include/jwindow.hpp include/jevent.hpp include/jfile.hpp include/jmsgbox.hpp include/jmwindow.hpp include/jcolln.hpp include/jseq.hpp
obj/jmwindow.obj: c/jmwindow.cpp include/jmwindow.hpp include/sys/jintern.hpp include/jwindow.hpp
obj/jslider.obj: c/jslider.cpp include/jslider.hpp include/jcontrol.hpp include/jwindow.hpp include/jcoord.hpp include/jctlh.hpp include/jmparam.hpp include/sys/jintern.hpp include/jstr.hpp
obj/jshared.obj: c/jshared.cpp include/jshared.hpp include/jstr.hpp include/jbuffer.hpp
obj/jcolln.obj: c/jcolln.cpp include/jcolln.hpp include/jexcept.hpp
obj/jfrmectl.obj: c/jfrmectl.cpp include/jfrmectl.hpp include/jframe.hpp include/jswp.hpp include/jcoord.hpp include/jwindow.hpp
obj/jposnh.obj: c/jposnh.cpp include/jposnh.hpp include/jevent.hpp include/jhandler.hpp include/jswp.hpp
obj/jsplit.obj: c/jsplit.cpp include/jsplit.hpp include/jcontrol.hpp include/jcoord.hpp include/jwindow.hpp include/jpm.hpp include/sys/jintern.hpp include/jctlh.hpp
obj/jgbutton.obj: c/jgbutton.cpp include/jgbutton.hpp include/jcontrol.hpp include/jpm.hpp include/jwindow.hpp include/jcoord.hpp include/jmodule.hpp include/jseq.hpp include/sys/jintern.hpp include/jctlh.hpp include/jbuffer.hpp
