Subversion Repositories Kolibri OS

Rev

Rev 1238 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1238 Rev 1286
-
 
1
ROOT=../../../develop/libraries/framework/trunk
-
 
2
 
-
 
3
include ../../../develop/libraries/framework/trunk/config.mk
-
 
4
 
1
# Note that kobra_st.o MUST be first and kobra.o last.
5
# Note that kobra_st.o MUST be first and kobra.o last.
2
OBJECTS=kobra_st.o heap.o malloc.o stdlib.o kolibri.o kobra.o
6
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
3
 
7
 
4
# Set real path to kolibri.img if you want to use install option
8
# Set real path to kolibri.img if you want to use install option
5
KOLIBRI_IMG=../../../../../../0.7.x-night/kolibri.img
9
KOLIBRI_IMG=../../../../../../0.7.x-night/kolibri.img
6
 
10
 
7
# Path to kobra.kex on floppy (directory should be created before installing)
11
# Path to kobra.kex on floppy (directory should be created before installing)
8
DESTDIR=kobra/
12
DESTDIR=kobra/
9
 
13
 
10
CC=gcc
14
# CC=gcc
11
AS=gcc
15
# AS=gcc
12
LD=ld
16
# LD=ld
13
OBJCOPY=objcopy
17
# OBJCOPY=objcopy
14
READELF=readelf
18
# READELF=readelf
15
MCOPY=mcopy
19
# MCOPY=mcopy
16
RM=rm -rf
20
# RM=rm -rf
17
 
21
 
18
CFLAGS=-c -m32 -O2
22
# CFLAGS=-c -m32 -O2
19
ASFLAGS=-c -m32
23
# ASFLAGS=-c -m32
20
LDFLAGS=-nostdlib -T kolibri.ld -melf_i386
24
# LDFLAGS=-nostdlib -T kolibri.ld -melf_i386
21
OBJCOPYFLAGS=-O binary
25
OBJCOPYFLAGS=-O binary
22
READELFFLAGS=--syms
26
READELFFLAGS=--syms
23
MCOPYFLAGS=-D o
27
MCOPYFLAGS=-D o
24
 
28
 
25
.c.o:
29
# .c.o:
26
	$(CC) $(CFLAGS) $<
30
# 	$(CC) $(CFLAGS) $<
27
 
31
# 
28
.s.o:
32
# .s.o:
29
	$(AS) $(ASFLAGS) $<
33
# 	$(AS) $(ASFLAGS) $<
30
 
34
 
31
all: $(OBJECTS)
35
all: $(OBJECTS)
32
	$(LD) $(LDFLAGS) -o kobra.elf $(OBJECTS)
36
	$(LD) $(LDFLAGS) -o kobra.elf $(OBJECTS)
33
	$(OBJCOPY) $(OBJCOPYFLAGS) kobra.elf kobra.kex
37
	$(OBJCOPY) $(OBJCOPYFLAGS) kobra.elf kobra.kex
34
 
38
 
35
debug: all
39
debug: all
36
	$(READELF) $(READELFFLAGS) kobra.elf | ./symbols2dbg.py >kobra.dbg
40
	$(READELF) $(READELFFLAGS) kobra.elf | ./symbols2dbg.py >kobra.dbg
37
 
41
 
38
install: kobra.kex $(KOLIBRI_IMG)
42
install: kobra.kex $(KOLIBRI_IMG)
39
	@$(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.kex ::/$(DESTDIR) && echo kobra.kex copied
43
	@$(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.kex ::/$(DESTDIR) && echo kobra.kex copied
40
	@ls kobra.dbg >/dev/null && $(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.dbg ::/$(DESTDIR) && echo kobra.dbg copied || echo no kobra.dbg
44
	@ls kobra.dbg >/dev/null && $(MCOPY) $(MCOPYFLAGS) -i $(KOLIBRI_IMG) kobra.dbg ::/$(DESTDIR) && echo kobra.dbg copied || echo no kobra.dbg
41
 
45
 
42
clean:
46
clean:
43
	$(RM) *.o kobra.kex kobra.dbg
47
	$(RM) *.o kobra.kex kobra.dbg
44
	
48
	
45
 
49
 
46
help:
50
help:
47
	@echo "Available options:"
51
	@echo "Available options:"
48
	@echo "  all - make kobra.kex"
52
	@echo "  all - make kobra.kex"
49
	@echo "  debug - same + kobra.dbg"
53
	@echo "  debug - same + kobra.dbg"
50
	@echo "  install - same + copying them to image"
54
	@echo "  install - same + copying them to image"
51
	@echo "You should gcc, ld & objcopy (or other C compiler and linker, but you may need correct Makefile to use them)."
55
	@echo "You should gcc, ld & objcopy (or other C compiler and linker, but you may need correct Makefile to use them)."
52
	@echo "If you want to use debug option you should have readelf. If you want to use install you should have shell"
56
	@echo "If you want to use debug option you should have readelf. If you want to use install you should have shell"
53
	@echo "(sh, bash, etc) & mtools."
57
	@echo "(sh, bash, etc) & mtools."
54
 
58
 
55
all:>
59
all:>
56
 
60
#>
57
.s.o:
-
 
58
>
-