
################################################################################

CXX=        g++
LIBS=       -pthread   -L/usr/X11R6/lib  -lwx_gtk2u_xrc-2.5 -lwx_gtk2u_html-2.5 -lwx_gtk2u_adv-2.5 -lwx_gtk2u_core-2.5 -lwx_baseu_xml-2.5 -lwx_baseu_net-2.5 -lwx_baseu-2.5  -lnsl 
WXCFLAGS=   -I/usr/lib/wx/include/gtk2-unicode-release-2.5 -I/usr/include/wx-2.5 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES 
CXXFLAGS=   -Wall -g -O2 $(CPPINC)

################################################################################

SRCDIR=.

CPPINC=${WXCFLAGS} -D_DEFINE_WXUI -DNDEBUG -I. -Irsa
LDFLAGS=$(LIBS)
PROGRAM=waste
PREFIX=/usr/local

WXWIN=/usr
TOOLCHAINNAME=gtk2
WXVERSION:=2.4
OUTPUTPATH=objs
OBJS=objs
RESCOMP=windres.exe
RCFILE=waste
RESOURCEOBJECT=
MACRESOURCECMD=
MACPACKAGEINFO=
LIBDIRNAME=/lib
RESPATH=--include-dir "$(WXWIN)/include" --include-dir "$(WXWIN)/contrib/include" --include-dir "/lib/wx/include/gtk2-ansi-debug-static-2.5"

OBJECTS=$(OBJS)/wxappresources.o $(OBJS)/wxmain.o $(OBJS)/wxmainframe.o $(OBJS)/wxnetstat.o $(OBJS)/asyncdns.o $(OBJS)/blowfish.o $(OBJS)/childwnd.o $(OBJS)/config.o $(OBJS)/connection.o $(OBJS)/d_chat.o $(OBJS)/filedb.o $(OBJS)/keygen.o $(OBJS)/license.o $(OBJS)/listen.o $(OBJS)/listview.o $(OBJS)/m_chat.o $(OBJS)/m_file.o $(OBJS)/m_keydist.o $(OBJS)/m_lcaps.o $(OBJS)/m_ping.o $(OBJS)/m_search.o $(OBJS)/m_upload.o $(OBJS)/main.o $(OBJS)/mqueue.o $(OBJS)/mqueuelist.o $(OBJS)/netkern.o $(OBJS)/netq.o $(OBJS)/prefs.o $(OBJS)/sha.o $(OBJS)/sharedmain.o $(OBJS)/shbuf.o $(OBJS)/srchwnd.o $(OBJS)/srvmain.o $(OBJS)/stdafx.o $(OBJS)/util.o $(OBJS)/xfers.o $(OBJS)/xferwnd.o $(OBJS)/md5.o $(OBJS)/nn.o $(OBJS)/prime.o $(OBJS)/r_keygen.o $(OBJS)/r_random.o $(OBJS)/rsa.o $(RESOURCEOBJECT) $(OBJS)/wxxfers.o $(OBJS)/wxuploads.o $(OBJS)/wxbrowser.o $(OBJS)/wxprefs.o $(OBJS)/wxchat.o $(OBJS)/wxpubkeys.o $(OBJS)/wxkgrand.o $(OBJS)/wxxml.o


all:	$(OBJS) $(MACPACKAGEINFO)

$(OBJS):
	mkdir -p $(OBJS)

clean:
	rm -f $(OBJS)/*.o $(OBJS)/*.res
	rm -fr .deps .pch $(PROGRAM).app
	rm -f $(OUTPUTPATH)/$(PROGRAM)

### Targets ####

all:	$(OUTPUTPATH)/$(PROGRAM)

$(OUTPUTPATH)/$(PROGRAM):	$(OBJECTS)
	$(CXX) -o $@ $(OBJECTS) $(LDFLAGS)
	$(MACRESOURCECMD)

# Windows only
$(OBJS)/$(RCFILE)_rc.o:	$(RCFILE).rc
	$(RESCOMP) --use-temp-file -i$< -o$@ $(RESPATH) --include-dir . --define NOPCH

# Mac only
# This is the default stuff produced by DialogBlocks.  I don't know if
# it works or not
$(OUTPUTPATH)/$(PROGRAM).app/Contents/PkgInfo: $(OUTPUTPATH)/$(PROGRAM) $(WXWIN)/src/mac/carbon/Info.plist.in $(LIBDIRNAME)/libwx_$(TOOLCHAINNAME)-$(WXVERSION).rsrc $(WXWIN)/src/mac/carbon/wxmac.icns
	mkdir -p $(OUTPUTPATH)/$(PROGRAM).app/Contents
	mkdir -p $(OUTPUTPATH)/$(PROGRAM).app/Contents/MacOS
	mkdir -p $(OUTPUTPATH)/$(PROGRAM).app/Contents/Resources
	sed -e "s/IDENTIFIER/`echo $(SRCDIR) | sed -e 's,\.\./,,g' | sed -e 's,/,.,g'`/" \
	-e "s/EXECUTABLE/$(PROGRAM)/" \
	-e "s/VERSION/$(WXVERSION)/" \
	$(WXWIN)/src/mac/carbon/Info.plist.in >$(OUTPUTPATH)/$(PROGRAM).app/Contents/Info.plist
	echo -n "APPL????" >$(OUTPUTPATH)/$(PROGRAM).app/Contents/PkgInfo
	ln -f $(OUTPUTPATH)/$(PROGRAM) $(OUTPUTPATH)/$(PROGRAM).app/Contents/MacOS/$(PROGRAM)
	cp -f $(LIBDIRNAME)/libwx_$(TOOLCHAINNAME)-$(WXVERSION).rsrc $(OUTPUTPATH)/$(PROGRAM).app/Contents/Resources/$(PROGRAM).rsrc
	cp -f $(WXWIN)/src/mac/carbon/wxmac.icns $(OUTPUTPATH)/$(PROGRAM).app/Contents/Resources/wxmac.icns

$(OBJS)/wxappresources.o:	wxappresources.cpp wxappresources.h
	$(CXX) -c -o $@ $(CXXFLAGS) wxappresources.cpp

$(OBJS)/wxmain.o:	wxmain.cpp wxmain.h wxmainframe.h
	$(CXX) -c -o $@ $(CXXFLAGS) wxmain.cpp

$(OBJS)/wxmainframe.o:	wxmainframe.cpp wxnetstat.h wxmainframe.h
	$(CXX) -c -o $@ $(CXXFLAGS) wxmainframe.cpp

$(OBJS)/wxnetstat.o:	wxnetstat.cpp wxnetstat.h
	$(CXX) -c -o $@ $(CXXFLAGS) wxnetstat.cpp

$(OBJS)/asyncdns.o:	asyncdns.cpp stdafx.hpp platform.hpp sockets.hpp asyncdns.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) asyncdns.cpp

$(OBJS)/blowfish.o:	blowfish.cpp stdafx.hpp platform.hpp blowfish.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) blowfish.cpp

$(OBJS)/childwnd.o:	childwnd.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp childwnd.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) childwnd.cpp

$(OBJS)/config.o:	config.cpp stdafx.hpp platform.hpp config.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) config.cpp

$(OBJS)/connection.o:	connection.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp sockets.hpp rsa/r_random.hpp rsa/rsa.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) connection.cpp

$(OBJS)/d_chat.o:	d_chat.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp childwnd.hpp d_chat.hpp m_chat.hpp srchwnd.hpp resourcesrv.hpp resource.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) d_chat.cpp

$(OBJS)/filedb.o:	filedb.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp srchwnd.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) filedb.cpp

$(OBJS)/keygen.o:	keygen.cpp stdafx.hpp resourcesrv.hpp resource.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp rsa/r_random.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) keygen.cpp

$(OBJS)/license.o:	license.cpp stdafx.hpp license.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) license.cpp

$(OBJS)/listen.o:	listen.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp sockets.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) listen.cpp

$(OBJS)/listview.o:	listview.cpp stdafx.hpp platform.hpp listview.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) listview.cpp

$(OBJS)/m_chat.o:	m_chat.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp m_chat.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_chat.cpp

$(OBJS)/m_file.o:	m_file.cpp stdafx.hpp platform.hpp m_file.hpp shbuf.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp blowfish.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_file.cpp

$(OBJS)/m_keydist.o:	m_keydist.cpp stdafx.hpp platform.hpp m_keydist.hpp shbuf.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_keydist.cpp

$(OBJS)/m_lcaps.o:	m_lcaps.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp m_lcaps.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_lcaps.cpp

$(OBJS)/m_ping.o:	m_ping.cpp stdafx.hpp platform.hpp m_ping.hpp shbuf.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_ping.cpp

$(OBJS)/m_search.o:	m_search.cpp stdafx.hpp platform.hpp mqueue.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp connection.hpp asyncdns.hpp blowfish.hpp packetdef.hpp shbuf.hpp m_search.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_search.cpp

$(OBJS)/m_upload.o:	m_upload.cpp stdafx.hpp platform.hpp m_upload.hpp shbuf.hpp util.hpp rsa/global.hpp rsa/rsaref.hpp itemlist.hpp listview.hpp sha.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) m_upload.cpp

$(OBJS)/main.o:	main.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp resource.hpp rsa/md5.hpp childwnd.hpp m_chat.hpp m_ping.hpp m_lcaps.hpp d_chat.hpp prefs.hpp xferwnd.hpp xfers.hpp m_file.hpp netq.hpp netkern.hpp srchwnd.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) main.cpp

$(OBJS)/mqueue.o:	mqueue.cpp stdafx.hpp platform.hpp main.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp rsa/md5.hpp rsa/r_random.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) mqueue.cpp

$(OBJS)/mqueuelist.o:	mqueuelist.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp netkern.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) mqueuelist.cpp

$(OBJS)/netkern.o:	netkern.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp netq.hpp netkern.hpp resourcesrv.hpp resource.hpp childwnd.hpp m_ping.hpp m_lcaps.hpp srchwnd.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) netkern.cpp

$(OBJS)/netq.o:	netq.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp netkern.hpp xferwnd.hpp xfers.hpp m_file.hpp resourcesrv.hpp resource.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) netq.cpp

$(OBJS)/prefs.o:	prefs.cpp stdafx.hpp platform.hpp main.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp resourcesrv.hpp resource.hpp childwnd.hpp d_chat.hpp m_chat.hpp prefs.hpp srchwnd.hpp netq.hpp netkern.hpp license.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) prefs.cpp

$(OBJS)/sha.o:	sha.cpp stdafx.hpp platform.hpp sha.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) sha.cpp

$(OBJS)/sharedmain.o:	sharedmain.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp rsa/md5.hpp childwnd.hpp m_chat.hpp m_ping.hpp m_lcaps.hpp d_chat.hpp prefs.hpp xferwnd.hpp xfers.hpp m_file.hpp netq.hpp netkern.hpp srchwnd.hpp resourcesrv.hpp resource.hpp build/build.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) sharedmain.cpp

$(OBJS)/shbuf.o:	shbuf.cpp stdafx.hpp platform.hpp shbuf.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) shbuf.cpp

$(OBJS)/srchwnd.o:	srchwnd.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp srchwnd.hpp xferwnd.hpp xfers.hpp m_file.hpp childwnd.hpp d_chat.hpp m_chat.hpp resource.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) srchwnd.cpp

$(OBJS)/srvmain.o:	srvmain.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp rsa/md5.hpp m_chat.hpp m_ping.hpp m_file.hpp m_lcaps.hpp xferwnd.hpp xfers.hpp netkern.hpp d_chat.hpp license.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) srvmain.cpp

$(OBJS)/stdafx.o:	stdafx.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) stdafx.cpp

$(OBJS)/util.o:	util.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp netkern.hpp rsa/md5.hpp rsa/r_random.hpp rsa/nn.hpp rsa/rsa.hpp resourcesrv.hpp resource.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) util.cpp

$(OBJS)/xfers.o:	xfers.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp xfers.hpp m_file.hpp xferwnd.hpp srchwnd.hpp netkern.hpp rsa/md5.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) xfers.cpp

$(OBJS)/xferwnd.o:	xferwnd.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp xfers.hpp m_file.hpp xferwnd.hpp srchwnd.hpp resourcesrv.hpp resource.hpp childwnd.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) xferwnd.cpp

$(OBJS)/md5.o:	rsa/md5.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/md5.cpp

$(OBJS)/nn.o:	rsa/nn.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/nn.cpp

$(OBJS)/prime.o:	rsa/prime.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/prime.cpp

$(OBJS)/r_keygen.o:	rsa/r_keygen.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/r_keygen.cpp

$(OBJS)/r_random.o:	rsa/r_random.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/r_random.cpp

$(OBJS)/rsa.o:	rsa/rsa.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) rsa/rsa.cpp

$(OBJS)/wxextra.o:	wxextra.cpp stdafx.hpp main.hpp platform.hpp configparams.hpp netparams.hpp listen.hpp connection.hpp asyncdns.hpp blowfish.hpp rsa/global.hpp rsa/rsaref.hpp sha.hpp packetdef.hpp mqueuelist.hpp mqueue.hpp util.hpp itemlist.hpp listview.hpp shbuf.hpp filedb.hpp m_search.hpp itemstack.hpp config.hpp m_upload.hpp m_keydist.hpp rsa/md5.hpp m_chat.hpp m_ping.hpp m_file.hpp m_lcaps.hpp xferwnd.hpp xfers.hpp netkern.hpp d_chat.hpp license.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxextra.cpp

$(OBJS)/wxxfers.o:	wxxfers.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxxfers.cpp

$(OBJS)/wxbrowser.o:	wxbrowser.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxbrowser.cpp

$(OBJS)/wxprefs.o:	wxprefs.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxprefs.cpp

$(OBJS)/wxpubkeys.o:	wxpubkeys.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxpubkeys.cpp

$(OBJS)/wxkgrand.o:	wxkgrand.cpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxkgrand.cpp

$(OBJS)/wxchat.o:	wxchat.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxchat.cpp

$(OBJS)/wxuploads.o:	wxuploads.cpp stdafx.hpp
	$(CXX) -c -o $@ $(CXXFLAGS) wxuploads.cpp

$(OBJS)/wxxml.o:	wxxml.cpp 
	$(CXX) -c -o $@ $(CXXFLAGS) wxxml.cpp

wxxml.cpp: wxwaste.xrc
	wxrc -v -c --output=wxxml.cpp wxwaste.xrc

install: $(OUTPUTPATH)/$(PROGRAM)
	cp $(OUTPUTPATH)/$(PROGRAM) $(PREFIX)/bin/waste
	strip $(PREFIX)/bin/waste


.PHONY:	all clean install tardist

