get version number to display from RES_STR_PRODUCT_VERSION
[reactos.git] / reactos / subsys / system / explorer / Makefile.PCH
1 #
2 # ReactOS lean explorer
3 #
4 # Makefile.PCH
5 #
6 # MinGW Makefile with precompiled header support
7 #
8
9 CC = gcc
10 CXX = g++
11 LINK = g++
12
13 CFLAGS = -DWIN32 -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -fexceptions -Wall -I.
14 RCFLAGS = -DWIN32 -D__WINDRES__
15 LFLAGS = -Wl,--subsystem,windows
16
17 ifdef DEBUG
18 CFLAGS += -D_DEBUG -g
19 RCFLAGS += -D_DEBUG
20 LFLAGS += -g
21 else
22 CFLAGS += -DNDEBUG -Os -D_NO_CONTEXT
23 RCFLAGS += -DNDEBUG
24 LFLAGS += -s
25 endif
26
27 ifndef UNICODE
28 UNICODE = 1
29 endif
30
31 ifeq ($(UNICODE),1)
32 CFLAGS += -DUNICODE
33 # LFLAGS+= -Wl,--entry,_wWinMain@16
34 endif
35
36 CXXFLAGS = $(CFLAGS)
37
38 EXEC_SUFFIX = .exe
39 RES_SUFFIX = .coff
40
41 VPATH = shell utility taskbar desktop dialogs
42
43 PROGRAM = explorer
44
45 TARGET = $(PROGRAM)$(EXEC_SUFFIX)
46
47 OBJECTS = \
48 startup.o \
49 shellclasses.o \
50 utility.o \
51 window.o \
52 dragdropimpl.o \
53 shellbrowserimpl.o \
54 explorer.o \
55 entries.o \
56 winfs.o \
57 shellfs.o \
58 mainframe.o \
59 shellbrowser.o \
60 desktop.o \
61 desktopbar.o \
62 taskbar.o \
63 startmenu.o \
64 traynotify.o \
65 quicklaunch.o \
66 settings.o
67
68 LIBS = gdi32 comctl32 ole32 uuid
69
70 all: precomp.h.gch $(TARGET)
71
72 precomp.h.gch: *.h utility/*.h shell/*.h desktop/*.h
73 $(CXX) $(CFLAGS) precomp.h
74
75 $(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX)
76 $(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS))
77
78 explorer$(RES_SUFFIX): $(PROGRAM)_intres.rc res/*.bmp res/*.ico
79 windres $(RCFLAGS) -o $@ $(PROGRAM)_intres.rc
80
81 clean:
82 rm -f $(TARGET) $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) precomp.h.gch
83
84 ever: