Refinement on documentation (#38)
[lunaix-os.git] / lunaix-os / makeinc / toolchain.mkinc
index 6882e8d9d64a4bb56b97ca17ed975a5a40e4638d..96dd3c4e1fcd308411a7437bdd5d911b8a320fb9 100644 (file)
@@ -2,14 +2,11 @@ CC := $(CX_PREFIX)gcc
 CC := $(CX_PREFIX)gcc
 AS := $(CX_PREFIX)as
 AR := $(CX_PREFIX)ar
-PY := python3
+LBUILD ?= $(shell realpath ./scripts/build-tools/luna_build.py)
 
-STRIP_OSDEP_CC := -ffreestanding -fno-pie
-STRIP_OSDEP_LD := -nostdlib -nolibc -z noexecstack -no-pie -Wl,--build-id=none
 
-ARCH_OPT := -m32 -D__ARCH_IA32
-O := -O2
-W := -Wall -Wextra -Werror -Wno-unknown-pragmas \
+W := -Wall -Wextra -Werror \
+               -Wno-unknown-pragmas \
                -Wno-unused-function \
                -Wno-unused-variable\
                -Wno-unused-but-set-variable \
@@ -17,25 +14,18 @@ W := -Wall -Wextra -Werror -Wno-unknown-pragmas \
                -Wno-discarded-qualifiers\
                -Werror=incompatible-pointer-types
 
-OFLAGS := -fno-gcse\
-                 -fno-gcse-lm\
-                 -fno-cse-follow-jumps\
-                 -fno-cse-skip-blocks\
-                 -fno-optimize-strlen\
-                 -fno-inline-functions-called-once \
-                 -fno-inline-small-functions \
-                 -fno-indirect-inlining\
-                 -fno-omit-frame-pointer
-
-CFLAGS := $(ARCH_OPT) -std=gnu99 -MMD $(OFLAGS) $(W)
-
-ifeq ($(BUILD_MODE),debug)
-       O = -Og
-       CFLAGS += -g
+OFLAGS := -fno-omit-frame-pointer
+
+CFLAGS := -std=gnu99 $(OFLAGS) $(W) -g
+
+ifeq ($(MODE),debug)
+       O := -Og
+else
+       O := -O2
 endif
 
-CFLAGS += $(O) $(STRIP_OSDEP_CC)
+CFLAGS += $(O)
 
-LDFLAGS := $(ARCH_OPT) $(O) $(STRIP_OSDEP_LD)
+LDFLAGS := $(O)
 
 MKFLAGS := --no-print-directory
\ No newline at end of file