X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/2a49908006b177c4d6354309333d06b1b96e4887..69777bdcab284335651a8002e2896f3862fa423d:/lunaix-os/makeinc/toolchain.mkinc diff --git a/lunaix-os/makeinc/toolchain.mkinc b/lunaix-os/makeinc/toolchain.mkinc index 42fae9f..7421f45 100644 --- a/lunaix-os/makeinc/toolchain.mkinc +++ b/lunaix-os/makeinc/toolchain.mkinc @@ -1,11 +1,16 @@ -CC := i686-elf-gcc -AS := i686-elf-as -AR := i686-elf-ar +CC := $(CX_PREFIX)gcc +CC := $(CX_PREFIX)gcc +AS := $(CX_PREFIX)as +AR := $(CX_PREFIX)ar +PY := python3 +STRIP_OSDEP_CC := -ffreestanding -fno-pie +STRIP_OSDEP_LD := -nostdlib -nolibc -z noexecstack -no-pie -Wl,--build-id=none -ARCH_OPT := -D__ARCH_IA32 +ARCH_OPT := -m32 -D__ARCH_IA32 O := -O2 -W := -Wall -Wextra -Wno-unknown-pragmas \ +W := -Wall -Wextra -Werror \ + -Wno-unknown-pragmas \ -Wno-unused-function \ -Wno-unused-variable\ -Wno-unused-but-set-variable \ @@ -19,11 +24,19 @@ OFLAGS := -fno-gcse\ -fno-cse-skip-blocks\ -fno-optimize-strlen\ -fno-inline-functions-called-once \ - -fno-inline-functions \ -fno-inline-small-functions \ - -fno-indirect-inlining + -fno-indirect-inlining\ + -fno-omit-frame-pointer -CFLAGS := -std=gnu99 -ffreestanding $(O) $(OFLAGS) $(W) $(ARCH_OPT) -LDFLAGS := -ffreestanding $(O) -nostdlib -lgcc +CFLAGS := $(ARCH_OPT) -std=gnu99 $(OFLAGS) $(W) + +ifeq ($(BUILD_MODE),debug) + O = -Og + CFLAGS += -g +endif + +CFLAGS += $(O) $(STRIP_OSDEP_CC) + +LDFLAGS := $(ARCH_OPT) $(O) $(STRIP_OSDEP_LD) MKFLAGS := --no-print-directory \ No newline at end of file