X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/f09e806d5032150564df39a2f7b1192c4d84cf15..1025235c72c31f7fa7b648c0e32ddcaa68a8f66a:/lunaix-os/makeinc/toolchain.mkinc diff --git a/lunaix-os/makeinc/toolchain.mkinc b/lunaix-os/makeinc/toolchain.mkinc index 9496c5c..c9d085f 100644 --- a/lunaix-os/makeinc/toolchain.mkinc +++ b/lunaix-os/makeinc/toolchain.mkinc @@ -1,11 +1,15 @@ -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 +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,19 +23,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 $(OFLAGS) $(W) $(ARCH_OPT) +CFLAGS := $(ARCH_OPT) -std=gnu99 $(OFLAGS) $(W) ifeq ($(BUILD_MODE),debug) O = -Og CFLAGS += -g endif -CFLAGS += $(O) +CFLAGS += $(O) $(STRIP_OSDEP_CC) -LDFLAGS := -ffreestanding $(O) -nostdlib -lgcc +LDFLAGS := $(ARCH_OPT) $(O) $(STRIP_OSDEP_LD) MKFLAGS := --no-print-directory \ No newline at end of file