summaryrefslogtreecommitdiff
path: root/patches/libfloat/990616.orig/200-cross_compile.patch
blob: 640008cb1dd62a3e43f52770023af6c5a18b7d2b (plain)
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
When linking, call directly ld in place of the gcc wrapper, because the wrapper
will try to link with -lfloat, which we don't have right now...

Simplify CFLAGS to stay ABI compliant (ot so I guess)...

diff -dur libfloat.orig/Makefile libfloat/Makefile
--- libfloat.orig/Makefile	2007-02-16 19:38:55.000000000 +0100
+++ libfloat/Makefile	2007-02-16 19:46:23.000000000 +0100
@@ -1,8 +1,11 @@
 # 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
+AR=$(CROSS_COMPILE)ar
+#CFLAGS=-O2 -freg-struct-return -fomit-frame-pointer -D__LIBFLOAT__
+CFLAGS=-O2 -D__LIBFLOAT__
+CC=$(CROSS_COMPILE)gcc 
+LDFLAGS=-shared -nostdlib
+LD=$(CROSS_COMPILE)ld
 
 all: libfloat.a libfloat.so.1
 
@@ -12,28 +13,31 @@
 
 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
+	$(LD) $(LDFLAGS) -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
+	$(CC) $(CFLAGS) -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
+	$(CC) $(CFLAGS) -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
+	$(CC) $(CFLAGS) -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
+	$(CC) $(CFLAGS) -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
+	install -d -m 755 "$(DESTDIR)/usr/lib"
+	install -m 755 libfloat.a "$(DESTDIR)/usr/lib"
+	install -m 755 libfloat.so.1 "$(DESTDIR)/usr/lib"
+	cd $(DESTDIR)/usr/lib
+	ln -s libfloat.so.1 libfloat.so
 
 clean: 
 	rm -f *.o
 	rm -f *.os
 	rm -f libfloat.a
 	rm -f libfloat.so.1
+	rm -f libfloat.so
 	rm -f *~