Files
kolibrios/programs/system/kobra/Makefile
T
ace-dent e05b57a95e develop/libraries: Post-SVN tidy (#436)
- Move source code from `trunk` into root directory for each library.
- Update build files and ASM include paths. Add SPDX license header where appropriate.
- Note: Line endings standardised from `CRLF` > `LF`, so best to view diffs with whitespace changes hidden.

(Work towards #75, point 3)

Reviewed-on: KolibriOS/kolibrios#436
Reviewed-by: Burer <burer@kolibrios.org>
Reviewed-by: Ivan B <1+dunkaist@noreply.localhost>
Reviewed-by: Mikhail Frolov <mixa.frolov2003@gmail.com>
Co-authored-by: Andrew <dent.ace@gmail.com>
Co-committed-by: Andrew <dent.ace@gmail.com>
2026-04-25 09:20:05 +00:00

58 lines
1.7 KiB
Makefile

ROOT=../../develop/libraries/framework
include ../../develop/libraries/framework/config.mk
# Note that kobra_st.o MUST be first and kobra.o last.
OBJECTS=kobra_st.o $(ROOT)/stdlib/heap.o $(ROOT)/stdlib/malloc.o $(ROOT)/stdlib/stdlib.o $(ROOT)/kolibri/kolibri.o $(ROOT)/libIPC/ipc.o kobra.o
# Set real path to kolibri.img if you want to use install option
KOLIBRI_IMG=../../../../../0.7.x-night/kolibri.img
# Path to kobra.kex on floppy (directory should be created before installing)
DESTDIR=kobra/
# CC=gcc
# AS=gcc
# LD=ld
# OBJCOPY=objcopy
# READELF=readelf
# MCOPY=mcopy
# RM=rm -rf
# CFLAGS=-c -m32 -O2
# ASFLAGS=-c -m32
# LDFLAGS=-nostdlib -T kolibri.ld -melf_i386
OBJCOPYFLAGS=-O binary
READELFFLAGS=--syms
MCOPYFLAGS=-D o
# .c.o:
# $(CC) $(CFLAGS) $<
#
# .s.o:
# $(AS) $(ASFLAGS) $<
all: $(OBJECTS)
$(LD) $(LDFLAGS) -o kobra.elf $(OBJECTS)
$(OBJCOPY) $(OBJCOPYFLAGS) kobra.elf kobra.kex
debug: all
$(READELF) $(READELFFLAGS) kobra.elf | ./symbols2dbg.py >kobra.dbg
install: kobra.kex $(KOLIBRI_IMG)
@$(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.kex ::/$(DESTDIR) && echo kobra.kex copied
@ls kobra.dbg >/dev/null && $(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.dbg ::/$(DESTDIR) && echo kobra.dbg copied || echo no kobra.dbg
clean:
$(RM) *.o kobra.kex kobra.dbg
help:
@echo "Available options:"
@echo " all - make kobra.kex"
@echo " debug - same + kobra.dbg"
@echo " install - same + copying them to image"
@echo "You should gcc, ld & objcopy (or other C compiler and linker, but you may need correct Makefile to use them)."
@echo "If you want to use debug option you should have readelf. If you want to use install you should have shell"
@echo "(sh, bash, etc) & mtools."