diff options
author | Danny Holman <dholman@gymli.org> | 2025-08-28 08:36:42 -0500 |
---|---|---|
committer | Danny Holman <dholman@gymli.org> | 2025-08-28 08:36:42 -0500 |
commit | a3085f5b9309c659c58282b4e50d955dcb0c0b7f (patch) | |
tree | 0b41f921d7d4e40b96392149be291542648e1f68 /bootstrap/stage2/Makefile | |
parent | bootstrap: create build files (diff) | |
download | box-a3085f5b9309c659c58282b4e50d955dcb0c0b7f.tar.gz box-a3085f5b9309c659c58282b4e50d955dcb0c0b7f.tar.zst box-a3085f5b9309c659c58282b4e50d955dcb0c0b7f.zip |
Update the build configuration files for the included bootloader to
match the formatting requirements of the main build configs.
Signed-off-by: Danny Holman <dholman@gymli.org>
Diffstat (limited to 'bootstrap/stage2/Makefile')
-rw-r--r-- | bootstrap/stage2/Makefile | 82 |
1 files changed, 34 insertions, 48 deletions
diff --git a/bootstrap/stage2/Makefile b/bootstrap/stage2/Makefile index 938b5e8..2b3951d 100644 --- a/bootstrap/stage2/Makefile +++ b/bootstrap/stage2/Makefile @@ -1,48 +1,34 @@ -INCLUDE?=-Iinclude -I$(ROOTDIR)kernel/arch/$(ARCH)/include -CFLAGS?=-O0 -ffreestanding -std=gnu11 -fno-stack-protector -LDFLAGS?=-nostdlib - -# -- Do not edit below this line -- - -INCLUDE:=$(INCLUDE) $(SYS_INCLUDE) -CFLAGS:=$(CFLAGS) -Wall -Wextra -DVERSION=\"$(VERSION)\" -DARCH=\"$(ARCH)\" -g -LDFLAGS:=$(LDFLAGS) -ARCH:=$(ARCH) -ELF:=boot-stage2 - -ARCHDIR=arch/$(ARCH) - -include $(ARCHDIR)/make.config - -INCLUDE:=$(INCLUDE) $(STAGE2_ARCH_INCLUDE) -CFLAGS:=$(CFLAGS) $(STAGE2_ARCH_CFLAGS) -LDFLAGS:=$(LDFLAGS) $(STAGE2_ARCH_LDFLAGS) - -OBJS=$(STAGE2_ARCH_OBJS) \ - init/init.o \ - drivers/sata/sata.o \ - -.PHONY: all clean install -.SUFFIXES: .o .c .s - -all: $(ELF) - -$(ELF): $(OBJS) - @$(LD) --script=$(ARCHDIR)/linker.ld $(LDFLAGS) -o $@ $^ - @echo [LD] $@ - -.c.o: - @$(CC) -MD -c $< -o $@ $(CFLAGS) $(INCLUDE) - @echo [CC] $@ - -.s.o: - @$(CC) -MD -c $< -o $@ $(CFLAGS) $(INCLUDE) - @echo [AS] $@ - -clean: - $(RM) $(ELF) $(OBJS) $(OBJS:.o=.d) - -install: $(ELF) - install -m 0644 $(ELF) $(DESTDIR)$(BOOTDIR) - --include $(OBJS:.o=.d) +# Copyright (C) 2025 Danny Holman <dholman@gymli.org> +# +# This file is part of BoxOS, a free and open-source Unix-like operating +# system. +# +# BoxOS is free software; you can redistribute it and/or modify under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or (at your option) any later +# version. +# +# BoxOS is distributed in the hope it will be useful, but WITHOUT ANY WARRANTY; +# without even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along with +# BoxOS; if not, see <https://www.gnu.org/licenses/>. + +include $(ROOTDIR)/common.mk + +ifeq (BS_DEBUG,YES) + AFLAGS+=-g + CFLAGS+=-g +endif + +INCLUDE+=-Iinclude -I$(ROOTDIR)kernel/include +CFLAGS+=-ffreestanding -fno-stack-protector $(BS_OPLVL) + +BINARY=bootstrap-stage2 + +include $(ARCHDIR)/make.conf + +OBJS=$(ARCH_OBJS) \ + +include $(ROOTDIR)/patterns.mk |