Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | Fix cross link using host-cross ar |
| 2 | |
| 3 | If building on 32bit host and creating 64bit libraries, the target |
| 4 | package builds should not invoke the 32bit hosts's ar. Specifically |
| 5 | you will get an error message like: |
| 6 | |
| 7 | x86_64-linux-gcc -m64 --sysroot=/opt/qemux86-64/tmp/sysroots/qemux86-64 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Llibs/x86emu v86_x86emu.o v86_mem.o v86_common.o v86.o -lx86emu -o v86d |
| 8 | libs/x86emu/libx86emu.a: could not read symbols: Archive has no index; run ranlib to add one |
| 9 | collect2: error: ld returned 1 exit status |
| 10 | |
| 11 | Signed-off-by: Jason Wessel <jason.wessel@windriver.com> |
| 12 | |
| 13 | Upstream-Status: Pending |
| 14 | |
| 15 | --- |
| 16 | libs/x86emu/Makefile | 6 +++++- |
| 17 | 1 file changed, 5 insertions(+), 1 deletion(-) |
| 18 | |
| 19 | --- a/libs/x86emu/Makefile |
| 20 | +++ b/libs/x86emu/Makefile |
| 21 | @@ -1,7 +1,11 @@ |
| 22 | OBJS = decode.o fpu.o ops.o ops2.o prim_ops.o sys.o |
| 23 | |
| 24 | +ifeq ($(AR),) |
| 25 | + AR = ar |
| 26 | +endif |
| 27 | + |
| 28 | libx86emu.a: $(OBJS) |
| 29 | - ar rv $@ $+ |
| 30 | + $(AR) rv $@ $+ |
| 31 | |
| 32 | %.o: %.c |
| 33 | $(CC) -c $(CFLAGS) -o $@ $< |