From fab898fe73eaaca3f112a00e483a3816118ee4c1 Mon Sep 17 00:00:00 2001 From: midipix Date: Sep 26 2015 15:05:52 +0000 Subject: apply the free-standing environment to all PE target builds. --- diff --git a/project/extras.mk b/project/extras.mk index bece2fc..084804c 100644 --- a/project/extras.mk +++ b/project/extras.mk @@ -1,2 +1,26 @@ CFLAGS_SHARED_ATTR += -DDALIST_BUILD CFLAGS_STATIC_ATTR += -DDALIST_STATIC + +ifeq ($(OS),midipix) + HOST_FMT = pe +else ifeq ($(OS),mingw) + HOST_FMT = pe +else + HOST_FMT = unknown +endif + +ifeq ($(HOST_FMT),pe) + CFLAGS_CONFIG += -DMIDIPIX_FREESTANDING -ffreestanding -D__NT$(HOST_BITS) + CFLAGS_CONFIG += -UWIN32 -U_WIN32 -U__WIN32 -U__WIN32__ + CFLAGS_CONFIG += -UWIN64 -U_WIN64 -U__WIN64 -U__WIN64__ + + LDFLAGS_SHARED += -nostdlib + LDFLAGS_SHARED += -Wl,--out-implib,$(SHARED_IMPLIB) + LDFLAGS_SHARED += -Wl,--exclude-all-symbols + + ifeq ($(HOST_BITS),32) + LDFLAGS_SHARED += -Wl,--entry,$(HOST_UNDERSCORE)dalist_entry_point@12 + else + LDFLAGS_SHARED += -Wl,--entry,$(HOST_UNDERSCORE)dalist_entry_point + endif +endif