1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
# Makefile for the Linux soft-float library
CC=gcc -O2 -freg-struct-return -fomit-frame-pointer -D__LIBFLOAT__
#CC=gcc -g -O2 -freg-struct-return -D__LIBFLOAT__
AR=ar
all: libfloat.a libfloat.so.1
libfloat.a: softfloat.o fplib_glue.o
rm -f libfloat.a
$(AR) cq libfloat.a softfloat.o fplib_glue.o
libfloat.so.1: softfloat.os fplib_glue.os
rm -f libfloat.so.1
gcc -shared -Wl,-soname,libfloat.so.1 softfloat.os fplib_glue.os -o libfloat.so.1
softfloat.o: softfloat/bits64/softfloat.c
$(CC) -c -o softfloat.o -Isoftfloat/bits64/ARM-gcc softfloat/bits64/softfloat.c
fplib_glue.o: fplib_glue.S
$(CC) -c -o fplib_glue.o fplib_glue.S
softfloat.os: softfloat/bits64/softfloat.c
$(CC) -fpic -c -o softfloat.os -Isoftfloat/bits64/ARM-gcc softfloat/bits64/softfloat.c
fplib_glue.os: fplib_glue.S
$(CC) -fpic -c -o fplib_glue.os fplib_glue.S
install: libfloat.a libfloat.so.1
cp -a libfloat.a $(DESTDIR)/usr/lib
cp -a libfloat.so.1 $(DESTDIR)/usr/lib
cd $(DESTDIR)/usr/lib; ln -s libfloat.so.1 libfloat.so
ldconfig
clean:
rm -f *.o
rm -f *.os
rm -f libfloat.a
rm -f libfloat.so.1
rm -f *~
|