1*c2c66affSColin Finck# 2*c2c66affSColin Finck# ReactOS explorer 3*c2c66affSColin Finck# 4*c2c66affSColin Finck# Makefile.MinGW 5*c2c66affSColin Finck# 6*c2c66affSColin Finck 7*c2c66affSColin FinckCC = gcc 8*c2c66affSColin FinckCXX = g++ 9*c2c66affSColin FinckLINK = g++ 10*c2c66affSColin Finck 11*c2c66affSColin Finck# -D_NO_ALPHABLEND for builds without msimg32.dll dependency 12*c2c66affSColin FinckCFLAGS = -DWIN32 -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DWINVER=0x0500 -fexceptions -Wall -I. 13*c2c66affSColin FinckRCFLAGS = -DWIN32 -D__WINDRES__ 14*c2c66affSColin FinckLFLAGS = -Wl,--subsystem,windows 15*c2c66affSColin Finck 16*c2c66affSColin Finckifdef DEBUG 17*c2c66affSColin FinckCFLAGS += -D_DEBUG -g 18*c2c66affSColin FinckRCFLAGS += -D_DEBUG 19*c2c66affSColin FinckLFLAGS += -g 20*c2c66affSColin Finckelse 21*c2c66affSColin FinckCFLAGS += -DNDEBUG -Os 22*c2c66affSColin FinckRCFLAGS += -DNDEBUG 23*c2c66affSColin FinckLFLAGS += -s 24*c2c66affSColin Finckendif 25*c2c66affSColin Finck 26*c2c66affSColin Finckifndef UNICODE 27*c2c66affSColin FinckUNICODE = 1 28*c2c66affSColin Finckendif 29*c2c66affSColin Finck 30*c2c66affSColin Finckifeq ($(UNICODE),1) 31*c2c66affSColin FinckCFLAGS += -DUNICODE 32*c2c66affSColin Finck# LFLAGS+= -Wl,--entry,_wWinMain@16 33*c2c66affSColin FinckRCFLAGS += -DUNICODE 34*c2c66affSColin Finckendif 35*c2c66affSColin Finck 36*c2c66affSColin FinckCXXFLAGS = $(CFLAGS) 37*c2c66affSColin Finck 38*c2c66affSColin FinckEXEC_SUFFIX = .exe 39*c2c66affSColin FinckRES_SUFFIX = .coff 40*c2c66affSColin Finck 41*c2c66affSColin FinckVPATH = shell utility taskbar desktop dialogs services 42*c2c66affSColin Finck 43*c2c66affSColin FinckPROGRAM = explorer 44*c2c66affSColin Finck 45*c2c66affSColin FinckTARGET = $(PROGRAM)$(EXEC_SUFFIX) 46*c2c66affSColin Finck 47*c2c66affSColin FinckOBJECTS = \ 48*c2c66affSColin Finck startup.o \ 49*c2c66affSColin Finck shellclasses.o \ 50*c2c66affSColin Finck utility.o \ 51*c2c66affSColin Finck window.o \ 52*c2c66affSColin Finck dragdropimpl.o \ 53*c2c66affSColin Finck shellbrowserimpl.o \ 54*c2c66affSColin Finck shellservices.o \ 55*c2c66affSColin Finck explorer.o \ 56*c2c66affSColin Finck entries.o \ 57*c2c66affSColin Finck winfs.o \ 58*c2c66affSColin Finck unixfs.o \ 59*c2c66affSColin Finck shellfs.o \ 60*c2c66affSColin Finck ntobjfs.o \ 61*c2c66affSColin Finck regfs.o \ 62*c2c66affSColin Finck fatfs.o \ 63*c2c66affSColin Finck webchild.o \ 64*c2c66affSColin Finck mainframe.o \ 65*c2c66affSColin Finck filechild.o \ 66*c2c66affSColin Finck pane.o \ 67*c2c66affSColin Finck shellbrowser.o \ 68*c2c66affSColin Finck desktop.o \ 69*c2c66affSColin Finck desktopbar.o \ 70*c2c66affSColin Finck taskbar.o \ 71*c2c66affSColin Finck startmenu.o \ 72*c2c66affSColin Finck traynotify.o \ 73*c2c66affSColin Finck quicklaunch.o \ 74*c2c66affSColin Finck favorites.o \ 75*c2c66affSColin Finck searchprogram.o \ 76*c2c66affSColin Finck settings.o \ 77*c2c66affSColin Finck i386-stub-win32.o \ 78*c2c66affSColin Finck xmlstorage.o \ 79*c2c66affSColin Finck xs-native.o 80*c2c66affSColin Finck 81*c2c66affSColin FinckLIBS = gdi32 comctl32 msimg32 ole32 uuid 82*c2c66affSColin FinckDELAYIMPORTS = oleaut32 wsock32 83*c2c66affSColin Finck 84*c2c66affSColin Finckall: $(TARGET) 85*c2c66affSColin Finck 86*c2c66affSColin Finck$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) notifyhook.dll 87*c2c66affSColin Finck $(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS)) $(addprefix -l,$(DELAYIMPORTS)) 88*c2c66affSColin Finck 89*c2c66affSColin Finck$(PROGRAM)$(RES_SUFFIX): $(PROGRAM)_intres.rc res/*.bmp res/*.ico 90*c2c66affSColin Finck windres $(RCFLAGS) -o $@ $(PROGRAM)_intres.rc 91*c2c66affSColin Finck 92*c2c66affSColin Fincknotifyhook.dll: notifyhook/notifyhook.c notifyhook/notifyhook.h 93*c2c66affSColin Finck $(CC) -D_WIN32_IE=0x0600 -Wall -D_NOTIFYHOOK_IMPL -Os -s notifyhook/notifyhook.c -shared -o $@ 94*c2c66affSColin Finck 95*c2c66affSColin Finckclean: 96*c2c66affSColin Finck rm -f $(TARGET) $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) \ 97*c2c66affSColin Finck desktop/*.o dialogs/*.o shell/*.o taskbar/*.o utility/*.o 98