Subversion Repositories Kolibri OS

Rev

Rev 4874 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4874 Rev 4930
Line 1... Line 1...
1
CC = gcc
1
CC = kos32-gcc
2
AR = ar rc
2
AR = kos32-ar
3
LD = ld
3
LD = kos32-ld
Line 4... Line 4...
4
 
4
 
5
CFLAGS = -c -O2 -march=pentium-mmx -fomit-frame-pointer -DBUILD_DLL
5
CFLAGS = -c -O2 -march=pentium-mmx -fomit-frame-pointer -DBUILD_DLL -DMISSING_SYSCALL_NAMES
-
 
6
LDFLAGS = -nostdlib -shared -s -T libcdll.lds --output-def libc.orig.def --out-implib libc.dll.a --image-base 0
-
 
7
ARFLAGS = crs
-
 
8
 
Line 6... Line 9...
6
LDFLAGS = -nostdlib -shared -s -T libcdll.lds --output-def libc.orig.def --out-implib libc.dll.a --image-base 0
9
SDK_DIR:= $(abspath ../../..)
7
 
10
 
Line 8... Line 11...
8
LIBC_TOPDIR   = .
11
LIBC_TOPDIR   = .
Line 9... Line 12...
9
LIBC_INCLUDES = $(LIBC_TOPDIR)/include
12
LIBC_INCLUDES = $(LIBC_TOPDIR)/include
Line 10... Line 13...
10
 
13
 
Line 11... Line 14...
11
NAME:=	  libc
14
NAME:=	  libc
Line 12... Line 15...
12
 
15
 
13
DEFINES:= -D_IEEE_LIBM
16
DEFINES:= -D_IEEE_LIBM
14
 
17
 
15
INCLUDES:=  -I $(LIBC_INCLUDES)
18
INCLUDES:=  -I $(LIBC_INCLUDES)
Line 52... Line 55...
52
         		crt/emutls.c         	\
55
         		crt/emutls.c         	\
53
         		crt/thread.S         	\
56
         		crt/thread.S         	\
54
         		crt/tls.S            	\
57
         		crt/tls.S            	\
55
			crt/setjmp.S		\
58
			crt/setjmp.S		\
56
         		crt/assert.c         	\
59
			crt/cpu_features.c	\
57
			crt/cpu_features.c	\
-
 
58
			ctype/ctype_.c 		\
60
			ctype/ctype_.c 		\
59
			ctype/isascii.c		\
61
			ctype/isascii.c		\
60
			ctype/isblank.c		\
62
			ctype/isblank.c		\
61
         		ctype/isalnum.c      	\
63
         		ctype/isalnum.c      	\
62
         		ctype/isalpha.c      	\
64
         		ctype/isalpha.c      	\
Line 91... Line 93...
91
         		ctype/wctype.c       	\
93
         		ctype/wctype.c       	\
92
         		errno/errno.c        	\
94
         		errno/errno.c        	\
93
			locale/locale.c		\
95
			locale/locale.c		\
94
			locale/lctype.c		\
96
			locale/lctype.c		\
95
         		reent/impure.c       	\
97
			locale/ldpart.c		\
-
 
98
         		reent/impure.c       	\
96
			reent/init_reent.c	\
99
			reent/init_reent.c	\
97
	         	reent/getreent.c     	\
100
	         	reent/getreent.c     	\
98
			reent/mutex.c		\
101
			reent/mutex.c		\
99
			reent/gettimeofdayr.c	\
102
			reent/gettimeofdayr.c	\
100
         		reent/hdlman.c       	\
103
			reent/isattyr.c		\
101
			reent/isattyr.c		\
-
 
102
         		reent/openr.c        	\
104
         		reent/openr.c        	\
103
         		reent/closer.c       	\
105
         		reent/closer.c       	\
104
         		reent/readr.c        	\
106
			reent/linkr.c		\
-
 
107
         		reent/readr.c        	\
105
         		reent/lseekr.c       	\
108
         		reent/lseekr.c       	\
106
         		reent/fstatr.c       	\
109
         		reent/fstatr.c       	\
107
         		reent/writer.c       	\
110
         		reent/writer.c       	\
108
         		search/qsort.c       	\
111
			reent/timesr.c		\
-
 
112
			reent/unlinkr.c		\
-
 
113
         		search/qsort.c       	\
109
         		search/bsearch.c     	\
114
         		search/bsearch.c     	\
110
			signal/signal.c		\
115
			signal/signal.c		\
111
         		sys/create.c         	\
116
			sys/close.c		\
-
 
117
         		sys/create.c         	\
112
         		sys/delete.c         	\
118
         		sys/delete.c         	\
113
         		sys/finfo.c          	\
119
			sys/errno.c		\
-
 
120
         		sys/finfo.c          	\
114
         		sys/read.c           	\
121
			sys/fsize.c          	\
-
 
122
			sys/fstat.c		\
-
 
123
			sys/gettod.c		\
-
 
124
			sys/io.c		\
-
 
125
			sys/ioread.c		\
-
 
126
			sys/iowrite.c		\
-
 
127
			sys/isatty.c		\
-
 
128
			sys/lseek.c		\
-
 
129
			sys/open.c		\
-
 
130
         		sys/read.c           	\
115
         		sys/write.c          	\
131
			sys/unlink.c		\
-
 
132
         		sys/write.c          	\
116
         		sys/fsize.c          	\
133
			sys/io_alloc.S		\
117
         		time/asctime.c       	\
134
         		time/asctime.c       	\
118
         		time/asctime_r.c     	\
135
         		time/asctime_r.c     	\
119
         		time/clock.c         	\
136
         		time/clock.c         	\
120
         		time/ctime.c         	\
137
         		time/ctime.c         	\
121
         		time/ctime_r.c       	\
138
         		time/ctime_r.c       	\
122
			time/difftime.c		\
139
			time/difftime.c		\
Line 128... Line 145...
128
         		time/lcltime.c       	\
145
         		time/lcltime.c       	\
129
         		time/lcltime_r.c     	\
146
         		time/lcltime_r.c     	\
130
			time/strftime.c		\
147
			time/strftime.c		\
131
         		time/time.c          	\
148
         		time/time.c          	\
132
         		time/tzlock.c        	\
149
			time/timelocal.c	\
-
 
150
         		time/tzlock.c        	\
133
         		time/tzvars.c
151
         		time/tzvars.c
134
 
152
 
Line 135... Line 153...
135
 
153
 
136
STDLIB_SRCS=                 			\
154
STDLIB_SRCS=                 			\
137
         		__atexit.c          	\
155
         		__atexit.c          	\
138
         		__call_atexit.c     	\
156
         		__call_atexit.c     	\
139
         		abort.c              	\
157
         		abort.c              	\
-
 
158
         		abs.c               	\
-
 
159
			assert.c		\
140
         		abs.c               	\
160
			atexit.c		\
141
         		atof.c              	\
161
         		atof.c              	\
142
         		atoi.c              	\
162
         		atoi.c              	\
143
			atol.c			\
163
			atol.c			\
144
         		div.c               	\
164
         		div.c               	\
Line 246... Line 266...
246
			puts.c			\
266
			puts.c			\
247
			refill.c		\
267
			refill.c		\
248
			rget.c			\
268
			rget.c			\
249
			remove.c		\
269
			remove.c		\
250
			rename.c		\
270
			setvbuf.c		\
251
			setvbuf.c		\
-
 
252
			stdio.c			\
271
			stdio.c			\
253
			tmpfile.c		\
272
			tmpfile.c		\
254
			tmpnam.c		\
273
			tmpnam.c		\
255
			ungetc.c		\
274
			ungetc.c		\
256
			vasniprintf.c		\
275
			vasniprintf.c		\
Line 372... Line 391...
372
shared: $(NAME).dll libapp.a libdll.a
391
shared: $(NAME).dll libapp.a libdll.a
Line 373... Line 392...
373
 
392
 
374
 
393
 
375
$(NAME).dll: $(LIB_OBJS) $(SRC_DEP) Makefile
394
$(NAME).dll: $(LIB_OBJS) $(SRC_DEP) Makefile
376
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(LIB_OBJS) --version-script libc.ver
395
	$(LD) $(LDFLAGS) $(LIBPATH) -o $@ $(LIB_OBJS) -lgcc --version-script libc.ver
377
	sed -e "s/ @[^ ]*//" libc.orig.def > libc.def
396
	#sed -e "s/ @[^ ]*//" libc.orig.def > libc.def
Line 378... Line 397...
378
	sed -f cmd2.sed libc.def > mem
397
	#sed -f cmd2.sed libc.def > mem
379
	sed -f newlib.sed mem > libc.inc
398
	#sed -f newlib.sed mem > libc.inc
380
 
399
 
381
install: libc.dll libc.dll.a libapp.a libdll.a
400
install: libc.dll libc.dll.a libapp.a libdll.a
382
	mv -f libc.dll ../../bin
401
	mv -f libc.dll $(SDK_DIR)/bin
Line 383... Line 402...
383
	mv -f libc.dll.a ../../lib   
402
	mv -f libc.dll.a $(SDK_DIR)/lib   
384
	mv -f libapp.a ../../lib
403
	mv -f libapp.a $(SDK_DIR)/lib
Line 385... Line 404...
385
	mv -f libdll.a ../../lib
404
	mv -f libdll.a $(SDK_DIR)/lib
386
 
405
 
Line 387... Line 406...
387
libapp.a: $(LIBCRT_OBJS) Makefile
406
libapp.a: $(LIBCRT_OBJS) Makefile
Line 388... Line 407...
388
	$(AR) libapp.a $(LIBCRT_OBJS)
407
	$(AR) $(ARFLAGS) libapp.a $(LIBCRT_OBJS)
389
 
408
 
Line 390... Line 409...
390
libdll.a: $(LIBDLL_OBJS) Makefile
409
libdll.a: $(LIBDLL_OBJS) Makefile
391
	$(AR) libdll.a $(LIBDLL_OBJS)
410
	$(AR) $(ARFLAGS) libdll.a $(LIBDLL_OBJS)