mirror of
https://github.com/reactos/reactos.git
synced 2024-11-01 12:26:32 +00:00
94 lines
1.9 KiB
Plaintext
94 lines
1.9 KiB
Plaintext
#
|
|
# ReactOS shell
|
|
#
|
|
# Makefile-rosshell-MinGW
|
|
#
|
|
# MinGW Makefile with precompiled header support
|
|
#
|
|
|
|
CC = gcc
|
|
CXX = g++
|
|
LINK = g++
|
|
|
|
CFLAGS = -DWIN32 -DROSSHELL -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DWINVER=0x0500 -fexceptions -Wall -I.
|
|
RCFLAGS = -DWIN32 -DROSSHELL -D__WINDRES__
|
|
LFLAGS = -Wl,--subsystem,windows
|
|
|
|
ifdef DEBUG
|
|
CFLAGS += -D_DEBUG -g
|
|
RCFLAGS += -D_DEBUG
|
|
LFLAGS += -g
|
|
else
|
|
CFLAGS += -DNDEBUG -Os #-march=pentium4
|
|
RCFLAGS += -DNDEBUG
|
|
LFLAGS += -s
|
|
endif
|
|
|
|
ifndef UNICODE
|
|
UNICODE = 1
|
|
endif
|
|
|
|
ifeq ($(UNICODE),1)
|
|
CFLAGS += -DUNICODE
|
|
# LFLAGS+= -Wl,--entry,_wWinMain@16
|
|
RCFLAGS += -DUNICODE
|
|
endif
|
|
|
|
CXXFLAGS = $(CFLAGS)
|
|
|
|
EXEC_SUFFIX = .exe
|
|
RES_SUFFIX = .coff
|
|
|
|
VPATH = shell utility taskbar desktop dialogs services
|
|
|
|
PROGRAM = rosshell
|
|
|
|
TARGET = $(PROGRAM)$(EXEC_SUFFIX)
|
|
|
|
OBJECTS = \
|
|
startup.o \
|
|
shellclasses.o \
|
|
utility.o \
|
|
window.o \
|
|
dragdropimpl.o \
|
|
shellbrowserimpl.o \
|
|
explorer.o \
|
|
entries.o \
|
|
winfs.o \
|
|
shellfs.o \
|
|
pane.o \
|
|
desktop.o \
|
|
desktopbar.o \
|
|
taskbar.o \
|
|
startmenu.o \
|
|
shellservices.o \
|
|
traynotify.o \
|
|
quicklaunch.o \
|
|
favorites.o \
|
|
searchprogram.o \
|
|
settings.o \
|
|
i386-stub-win32.o \
|
|
xmlstorage.o \
|
|
xs-native.o
|
|
|
|
LIBS = gdi32 comctl32 msimg32 ole32 uuid
|
|
DELAYIMPORTS = oleaut32 wsock32
|
|
|
|
all: precomp.h.gch $(TARGET)
|
|
|
|
precomp.h.gch: *.h utility/*.h shell/*.h desktop/*.h
|
|
$(CXX) $(CFLAGS) precomp.h
|
|
|
|
$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) notifyhook.dll
|
|
$(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS)) $(addprefix -l,$(DELAYIMPORTS))
|
|
|
|
$(PROGRAM)$(RES_SUFFIX): explorer_intres.rc res/*.bmp res/*.ico
|
|
windres $(RCFLAGS) -o $@ explorer_intres.rc
|
|
|
|
notifyhook.dll: notifyhook/notifyhook.c notifyhook/notifyhook.h
|
|
$(CC) -D_WIN32_IE=0x0600 -Wall -D_NOTIFYHOOK_IMPL -Os -s notifyhook/notifyhook.c -shared -o $@
|
|
|
|
clean:
|
|
rm -f $(TARGET) $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) precomp.h.gch \
|
|
desktop/*.o dialogs/*.o shell/*.o taskbar/*.o utility/*.o
|