## FLXLab v2.5 - A program for running psychology experiments.  
## Copyright (C) 2010 Todd R. Haskell (todd.haskell@wwu.edu) 
## 
## Use and distribution is governed by the terms of the 
## GNU General Public License. Certain portions of the 
## program may be subject to other licenses as well. See 
## the file LICENSE.TXT for details.
## 

vpath % bin

include ../Makefile.common
include ../Makefile.allegro

# OS-specific configuration
ifeq ($(FLXLABOS),linux)
	BINNAME=flxlab.bin
     LIBFLAGS += -rdynamic -l$(GMODULE) -l$(GLIB) -ldl
     OSINSTALLCOMMANDS=cp flxlab.linux_wrapper $(FLXLABVERSIONDIR)/flxlab; chmod a+x $(FLXLABVERSIONDIR)/flxlab
     OSUNINSTALLCOMMANDS=rm -f $(FLXLABVERSIONDIR)/flxlab
endif
ifeq ($(FLXLABOS),windows)
	OBJECTS += icons.o
	BINNAME=flxlab.exe
     LIBFLAGS += -lwinmm -Wl,--out-implib,bin/libflxlab.a
     OSINSTALLCOMMANDS=$(info No OS-specific install steps for Windows ...)
     OSUNINSTALLCOMMANDS=$(info No OS-specific uninstall steps for Windows ...)
endif
ifeq ($(FLXLABOS),mac)
	BINNAME=flxlab.bin
	LIBFLAGS += -lalleg-main
     OSINSTALLCOMMANDS=cp flxlab.mac_wrapper $(FLXLABVERSIONDIR)/flxlab.app; chmod a+x $(FLXLABVERSIONDIR)/flxlab.app
     OSUNINSTALLCOMMANDS=rm -f $(FLXLABVERSIONDIR)/flxlab.app
endif

build: flxlab.exe

ifeq ($(FLXLABOS),windows)
icons.o: icons.rc
	windres icons.rc object/icons.o
endif

flxlab.exe: $(OBJECTS)
	$(CC) -o bin/$(BINNAME) $(addprefix object/,$(notdir $^)) $(LIBFLAGS)

custom_install:
	cp bin/$(BINNAME) $(FLXLABVERSIONDIR)
	$(OSINSTALLCOMMANDS)
	cp RANDOM_NUMBER_LICENSE.* $(FLXLABLICENSEDIR)


custom_uninstall:
	rm -f $(FLXLABVERSIONDIR)/$(BINNAME)
	$(OSUNINSTALLCOMMANDS)
	rm -f $(FLXLABLICENSEDIR)/RANDOM_NUMBER_LICENSE.*

clean: base_clean
base_clean:
	rm -f bin/*


