## Berkeley Open Infrastructure for Network Computing
## http://boinc.berkeley.edu
## Copyright (C) 2005 University of California
##
## This is free software; you can redistribute it and/or
## modify it under the terms of the GNU Lesser General Public
## License as published by the Free Software Foundation;
## either version 2.1 of the License, or (at your option) any later version.
##
## This software is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
## See the GNU Lesser General Public License for more details.
##
## To view the GNU Lesser General Public License visit
## http://www.gnu.org/copyleft/lesser.html
## or write to the Free Software Foundation, Inc.,
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
##
## Provide a specially constructed binary for the Linux Ubuntu environment
## using GTK 2.x and wxWidgets.  This should produce a stock client for Ubuntu
## 6.06 or better and is intended to be built with the BOINC-Build-Ubuntu
## virtual machine
##

CXX=g++ -g
CXXFLAGS=-DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D_LARGEFILE_SOURCE=1 -DNO_GCC_PRAGMA
CXXINCLUDES=-I../ -I../lib/ -I/usr/local/lib/wx/include/gtk2-unicode-release-static-2.6 -I/usr/local/include/wx-2.6

stdwx.h.gch: stdwx.h
	$(CXX) $(CXXINCLUDES) $(CXXFLAGS) -c stdwx.h -o stdwx.h.gch
 
.cpp.o:
	$(CXX) $(CXXINCLUDES) $(CXXFLAGS) -c -o $*.o $<

OBJ = \
    stdwx.o \
    BOINCBaseFrame.o \
    BOINCBaseView.o \
    BOINCDialupManager.o \
    BOINCGUIApp.o \
    BOINCTaskBar.o \
    DlgAbout.o \
    DlgGenericMessage.o \
    DlgOptions.o \
    DlgSelectComputer.o \
    ValidateAccountKey.o \
    ValidateEmailAddress.o \
    ValidateURL.o \
    LogBOINC.o \
    hyperlink.o \
    MainDocument.o \
    AdvancedFrame.o \
    BOINCTaskCtrl.o \
    BOINCListCtrl.o \
    ViewMessages.o \
    ViewProjects.o \
    ViewResources.o \
    ViewStatistics.o \
    ViewTransfers.o \
    ViewWork.o \
    wizardex.o \
    BOINCBaseWizard.o \
    WizardAccountManager.o \
    WizardAttachProject.o \
    AccountInfoPage.o \
    AccountKeyPage.o \
    AccountManagerInfoPage.o \
    AccountManagerProcessingPage.o \
    AccountManagerPropertiesPage.o \
    AlreadyAttachedPage.o \
    AlreadyExistsPage.o \
    CompletionErrorPage.o \
    CompletionPage.o \
    NoInternetConnectionPage.o \
    NotDetectedPage.o \
    NotFoundPage.o \
    ProjectInfoPage.o \
    ProjectProcessingPage.o \
    ProjectPropertiesPage.o \
    ProxyInfoPage.o \
    ProxyPage.o \
    UnavailablePage.o \
    WelcomePage.o
    
LIBS = -pthread -L/usr/X11R6/lib -L/opt/gnome/lib ../lib/libboinc.a /usr/local/lib/libwx_gtk2u_xrc-2.6.a /usr/local/lib/libwx_gtk2u_qa-2.6.a /usr/local/lib/libwx_gtk2u_html-2.6.a /usr/local/lib/libwx_gtk2u_adv-2.6.a /usr/local/lib/libwx_gtk2u_core-2.6.a /usr/local/lib/libwx_baseu_xml-2.6.a /usr/local/lib/libwx_baseu_net-2.6.a /usr/local/lib/libwx_baseu-2.6.a -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lfontconfig -lXext -lXrender -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lX11 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lglib-2.0 -lXinerama /usr/lib/libpng.a /usr/lib/libjpeg.a /usr/lib/libtiff.a /usr/lib/libexpat.a /usr/local/lib/libwxregexu-2.6.a /usr/lib/libz.a -ldl -lm /usr/lib/gcc/i486-linux-gnu/4.0.3/libstdc++.a /usr/lib/gcc/i486-linux-gnu/4.0.3/libgcc.a

clean:
	rm stdwx.h.gch
	rm boincmgr
	rm boincmgr.unmodified
	rm $(PROGS) $(OBJ)

boincmgr: stdwx.h.gch $(OBJ)
	$(CC) $(OBJ) $(INCLUDES) $(WXINCLUDES) $(DEFINES) $(WXDEFINES) $(LIBS) -o boincmgr

boincmgr_strip: boincmgr
	cp boincmgr boincmgr.unmodified
	strip boincmgr

PROGS = boincmgr_strip

all: $(PROGS)