summaryrefslogtreecommitdiffhomepage
path: root/project
diff options
context:
space:
mode:
Diffstat (limited to 'project')
-rw-r--r--project/extras.mk24
1 files changed, 24 insertions, 0 deletions
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