view makefile.mingw @ 2048:2d06f48e9d12

Win: Imported some changes from the dark mode example app I've been following. I was hoping to find some new APIs that would improve the dark mode implementation... These updates utilize new APIs for setting the dark titlebar, but does not seem to improve the dark mode appearance at all.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sat, 30 Nov 2019 10:43:55 +0000
parents 43c6ecfc598a
children 87d574dda8f5
line wrap: on
line source


# Dynamic Windows MINGW Makefile

CC = gcc
RM = del /f

DEFS =
LIBS =

ifndef TARGET_CPU
TARGET_CPU=x86
endif

ifeq ($(TARGET_CPU), x86)
PLATFORM_DEF=-DWIN32
PLATFORM_CFLAGS=-m32
PLATFORM_TARGET=pe-i386
else
PLATFORM_DEF=-DWIN64
PLATFORM_CFLAGS=-m64
PLATFORM_TARGET=pe-x86-64 -DDW64
endif

# Had to disable -Wunused-value due to every Win32 macro generating this warning...
# GCC has marked this as  WONTFIX http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24900
CFLAGS = -O -g -DMSVC $(PLATFORM_DEF) $(PLATFORM_CFLAGS) -D__WIN32__ -DBUILD_DLL -DGDIPLUS -DTOOLBAR -DUNICODE -D_UNICODE -DISOLATION_AWARE_ENABLED=1 -I./win -I. -I./platform -Wall -Wno-unused-value -mthreads -o $(@)
LDFLAGS = -shared -mwindows -mthreads -lcomctl32 -lole32 -loleaut32 -luserenv -lmsimg32 -lgdiplus -luuid

COMPATOBJECTS = dwcompat.o dirent.o
OBJECTS = dw.o browser.o XBrowseForFolder.o

VPATH=../ ../win

all: dw.dll dwcompat.dll dwtest.exe

dw.res:  win/dw.rc
	windres --target=$(PLATFORM_TARGET) --input win/dw.rc --output dw.res --output-format=coff
   
dw.dll:  $(OBJECTS) win/dw-mingw.def dw.res
	$(CC) $(CFLAGS) $(DEFS) -o dw.dll dw.res $(OBJECTS) $(LDFLAGS) \
	-Wl,--out-implib,dw.a -Wl,-Map,dw.dll.map -Wl,--cref  -Wl,--enable-stdcall-fixup win/dw-mingw.def 

dwcompat.dll:  $(COMPATOBJECTS) win/dwcompat-mingw.def
	$(CC) $(CFLAGS) $(DEFS) -o dwcompat.dll $(COMPATOBJECTS) $(LDFLAGS) -lwsock32 \
  -Wl,--out-implib,dwcompat.a -Wl,-Map,dwcompat.dll.map -Wl,--cref  -Wl,--enable-stdcall-fixup win/dwcompat-mingw.def 

dwtest.res: win/dwtest.rc
	windres --target=$(PLATFORM_TARGET) --input win/dwtest.rc --output dwtest.res --output-format=coff
   
dwtest.exe: dwtest.o dw.a dwcompat.a dwtest.res
	$(CC) $(CFLAGS) -o dwtest.exe dwtest.res dwtest.o dw.a dwcompat.a

clean:
	$(RM) *.obj *.o *.lib *.res *~ dwtest.exe dw.dll dwcompat.dll SVN.REV

dw.o: win/dw.c
	$(CC) $(CFLAGS) -DBUILD_DLL -c $<	

browser.o: win/browser.c
	$(CC) $(CFLAGS) -DBUILD_DLL -c $<	

XBrowseForFolder.o: win/XBrowseForFolder.cpp
	$(CC) $(CFLAGS) -DBUILD_DLL -c $<	

dwcompat.o: dwcompat.c
	$(CC) $(CFLAGS) -DBUILD_DLL -c $<	

dirent.o: win/dirent.c
	$(CC) $(CFLAGS) -DBUILD_DLL -c $<	

dwtest.o: dwtest.c
	$(CC) $(CFLAGS) -c $<	

DEPS := $(wildcard *.d)
ifneq ($(DEPS),)
include $(DEPS)
endif