Subversion Repositories Kolibri OS

Rev

Rev 5725 | Rev 5737 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5725 Rev 5728
1
NAME= kpm
1
NAME= kpm
2
 
2
 
3
FASM= fasm.exe
3
FASM= fasm.exe
4
CC = kos32-gcc
4
CC = kos32-gcc
5
AR = kos32-ar
5
AR = kos32-ar
6
LD = kos32-ld
6
LD = kos32-ld
7
CPP= kos32-g++
7
CPP= kos32-g++
8
STRIP = kos32-strip
8
STRIP = kos32-strip
9
 
9
 
10
CFLAGS = -U_Win32 -U_WIN32 -U__MINGW32__ -c -Os -fno-ident -fomit-frame-pointer  -mno-ms-bitfields
10
CFLAGS = -U_Win32 -U_WIN32 -U__MINGW32__ -c -Os -fno-ident -fomit-frame-pointer  -mno-ms-bitfields
11
ARFLAG = crs
11
ARFLAG = crs
12
 
12
 
13
SDK_DIR:= $(abspath ../../sdk)
13
SDK_DIR:= $(abspath ../../sdk)
14
LIB_DIR:= $(SDK_DIR)/lib
14
LIB_DIR:= $(SDK_DIR)/lib
15
 
15
 
16
INCLUDES= -I. -I$(SDK_DIR)/sources/newlib/libc/include
16
INCLUDES= -I. -I$(SDK_DIR)/sources/newlib/libc/include
17
INCLUDES+=-I$(SDK_DIR)/sources/freetype/include
17
INCLUDES+=-I$(SDK_DIR)/sources/freetype/include
18
 
18
 
19
#DEFINES= -DDEBUG=1
19
#DEFINES= -DDEBUG=1
20
 
20
 
21
DEFINES= -DNDEBUG
21
DEFINES= -DNDEBUG
22
LIBS:= -lsupc++ -lgcc_eh -lc.dll -lapp -lgcc
22
LIBS:= -lsupc++ -lgcc_eh -lc.dll -lapp -lgcc
23
 
23
 
24
LIBPATH:= -L$(LIB_DIR) -L/home/autobuild/tools/win32/mingw32/lib
24
LIBPATH:= -L$(LIB_DIR) -L/home/autobuild/tools/win32/mingw32/lib
25
 
25
 
26
LDFLAGS = -static -nostdlib --stack 0x30000 -Map kpm.map -T$(SDK_DIR)/sources/newlib/app.lds --image-base 0
26
LDFLAGS = -static -nostdlib --stack 0x30000 -Map kpm.map -T$(SDK_DIR)/sources/newlib/app.lds --image-base 0
27
 
27
 
28
SOURCES = 	http.asm			\
28
SOURCES = 	http.asm			\
29
		kpm.c				\
29
		kpm.c				\
30
		collection.cpp			\
30
		collection.cpp			\
31
		tinyxml/tinyxml.cpp		\
31
		tinyxml/tinyxml.cpp		\
32
		tinyxml/tinystr.cpp		\
32
		tinyxml/tinystr.cpp		\
33
		tinyxml/tinyxmlparser.cpp	\
33
		tinyxml/tinyxmlparser.cpp	\
34
		tinyxml/tinyxmlerror.cpp	\
34
		tinyxml/tinyxmlerror.cpp	\
35
		$(NULL)
35
		7z/7z.c				\
-
 
36
		7z/7zFile.c			\
-
 
37
		7z/7zStream.c			\
-
 
38
		7z/7zCrc.c			\
-
 
39
		7z/7zCrcOpt.c			\
-
 
40
		7z/CpuArch.c			\
-
 
41
		7z/7zArcIn.c			\
-
 
42
		7z/7zBuf.c			\
-
 
43
		7z/7zDec.c			\
-
 
44
		7z/LzmaDec.c			\
-
 
45
		7z/Lzma2Dec.c			\
-
 
46
		7z/Bcj2.c			\
-
 
47
		7z/Delta.c			\
-
 
48
		7z/Bra.c			\
-
 
49
		7z/Bra86.c			\
-
 
50
		7z/BraIA64.c			\
-
 
51
		7z/7zAlloc.c			\
-
 
52
		7z/Alloc.c			\
-
 
53
		$(NULL)
36
 
54
 
37
OBJECTS =  $(patsubst %.asm, %.o, $(patsubst %.cpp, %.o, $(patsubst %.c, %.o, $(SOURCES))))
55
OBJECTS =  $(patsubst %.asm, %.o, $(patsubst %.cpp, %.o, $(patsubst %.c, %.o, $(SOURCES))))
38
 
56
 
39
# targets 
57
# targets 
40
 
58
 
41
all:$(NAME)
59
all:$(NAME)
42
 
60
 
43
$(NAME): $(OBJECTS) Makefile
61
$(NAME): $(OBJECTS) Makefile
44
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)
62
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(OBJECTS) $(LIBS)
45
	kos32-objcopy $@ -O binary
63
	kos32-objcopy $@ -O binary
46
 
64
 
47
%.o : %.c Makefile
65
%.o : %.c Makefile
48
	$(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
66
	$(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
49
 
67
 
50
%.o : %.cpp Makefile
68
%.o : %.cpp Makefile
51
	$(CPP) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
69
	$(CPP) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
52
 
70
 
53
%.o : %.asm Makefile
71
%.o : %.asm Makefile
54
	$(FASM) $< $@
72
	$(FASM) $< $@
55
 
73
 
56
 
74
 
57
clean: 
75
clean: 
58
	-rm -f *.o
76
	-rm -f *.o
59
 
77
 
60
%.o>
78
%.o>
61
 
79
 
62
%.o>
80
%.o>