Mercurial > dwindows
view makefile.mingw @ 1865:43c6ecfc598a
It seems WIN64 is defined in 32-bit mode using MinGW... so switch
to using DW64 as the define to say which mode we are compiling in.
This fixes 32-bit MinGW builds not functioning due to using 64-bit
manifest instead of the 32-bit one.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Fri, 08 Mar 2013 18:03:13 +0000 |
parents | 417176df4755 |
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