feat: add 64bit-no-nan-tagging build config across gmake, premake, vs2017, and vs2019 projects
Introduce new build configuration "64bit-no-nan-tagging" for both 64-bit and 32-bit platforms, defining WREN_NAN_TAGGING=0 to disable NaN tagging in the Wren CLI. Update Makefiles, premake5.lua, and Visual Studio solution/project files to support the new config with appropriate compiler flags, linker settings, and platform-specific defines (e.g., _GNU_SOURCE on Linux, _DARWIN_* on macOS).
This commit is contained in:
@@ -20,6 +20,12 @@ else ifeq ($(config),debug_64bit)
|
||||
else ifeq ($(config),debug_32bit)
|
||||
wren_cli_config = debug_32bit
|
||||
|
||||
else ifeq ($(config),64bit-no-nan-tagging_64bit)
|
||||
wren_cli_config = 64bit-no-nan-tagging_64bit
|
||||
|
||||
else ifeq ($(config),64bit-no-nan-tagging_32bit)
|
||||
wren_cli_config = 64bit-no-nan-tagging_32bit
|
||||
|
||||
else
|
||||
$(error "invalid configuration $(config)")
|
||||
endif
|
||||
@@ -47,6 +53,8 @@ help:
|
||||
@echo " release_32bit"
|
||||
@echo " debug_64bit"
|
||||
@echo " debug_32bit"
|
||||
@echo " 64bit-no-nan-tagging_64bit"
|
||||
@echo " 64bit-no-nan-tagging_32bit"
|
||||
@echo ""
|
||||
@echo "TARGETS:"
|
||||
@echo " all (default)"
|
||||
|
||||
@@ -69,6 +69,24 @@ ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m32 -g -std=c99
|
||||
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -m32 -g
|
||||
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib32 -m32
|
||||
|
||||
else ifeq ($(config),64bit-no-nan-tagging_64bit)
|
||||
TARGETDIR = ../../bin
|
||||
TARGET = $(TARGETDIR)/wren_cli
|
||||
OBJDIR = obj/64bit/64bit-no-nan-tagging
|
||||
DEFINES += -D_GNU_SOURCE
|
||||
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m64 -std=c99
|
||||
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -m64
|
||||
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib64 -m64 -s
|
||||
|
||||
else ifeq ($(config),64bit-no-nan-tagging_32bit)
|
||||
TARGETDIR = ../../bin
|
||||
TARGET = $(TARGETDIR)/wren_cli
|
||||
OBJDIR = obj/32bit/64bit-no-nan-tagging
|
||||
DEFINES += -D_GNU_SOURCE
|
||||
ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) -m32 -std=c99
|
||||
ALL_CXXFLAGS += $(CXXFLAGS) $(ALL_CPPFLAGS) -m32
|
||||
ALL_LDFLAGS += $(LDFLAGS) -L/usr/lib32 -m32 -s
|
||||
|
||||
else
|
||||
$(error "invalid configuration $(config)")
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user