X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=cirros-testvm%2Fsrc-cirros%2Fbuildroot-2015.05%2Fpackage%2Fbzip2%2F0001-build-objects-twice.patch;fp=cirros-testvm%2Fsrc-cirros%2Fbuildroot-2015.05%2Fpackage%2Fbzip2%2F0001-build-objects-twice.patch;h=9bde0f6488c08788a3d1ecf362129afbc466e2fe;hb=b0a0f15dfaa205161a7fcb20cf1b8cd4948c2ef3;hp=0000000000000000000000000000000000000000;hpb=c6ac3cd55ee2da956195eee393b0882105dfad4e;p=packages%2Ftrusty%2Fcirros-testvm.git diff --git a/cirros-testvm/src-cirros/buildroot-2015.05/package/bzip2/0001-build-objects-twice.patch b/cirros-testvm/src-cirros/buildroot-2015.05/package/bzip2/0001-build-objects-twice.patch new file mode 100644 index 0000000..9bde0f6 --- /dev/null +++ b/cirros-testvm/src-cirros/buildroot-2015.05/package/bzip2/0001-build-objects-twice.patch @@ -0,0 +1,56 @@ +Build objects twice for shared and static libraries + +The existing Makefile causes problems on MIPS because the same object +files (not compiled with -fPIC) are used in static and shared libraries. +MIPS will refuce to link non-pic objects in shared libraries. +We fix this problems by creating a new rule for the shared library +and build the shared objects as *.sho instead of *.o. +Then, we use these objects to create the shared library. + +Signed-off-by: Markos Chandras + +Index: bzip2-1.0.6/Makefile-libbz2_so +=================================================================== +--- bzip2-1.0.6.orig/Makefile-libbz2_so ++++ bzip2-1.0.6/Makefile-libbz2_so +@@ -25,13 +25,13 @@ SHELL=/bin/sh + CC=gcc + override CFLAGS += -fpic -fPIC -Wall + +-OBJS= blocksort.o \ +- huffman.o \ +- crctable.o \ +- randtable.o \ +- compress.o \ +- decompress.o \ +- bzlib.o ++OBJS= blocksort.sho \ ++ huffman.sho \ ++ crctable.sho \ ++ randtable.sho \ ++ compress.sho \ ++ decompress.sho \ ++ bzlib.sho + + all: $(OBJS) + $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS) +@@ -45,17 +45,5 @@ install: + clean: + rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared + +-blocksort.o: blocksort.c +- $(CC) $(CFLAGS) -c blocksort.c +-huffman.o: huffman.c +- $(CC) $(CFLAGS) -c huffman.c +-crctable.o: crctable.c +- $(CC) $(CFLAGS) -c crctable.c +-randtable.o: randtable.c +- $(CC) $(CFLAGS) -c randtable.c +-compress.o: compress.c +- $(CC) $(CFLAGS) -c compress.c +-decompress.o: decompress.c +- $(CC) $(CFLAGS) -c decompress.c +-bzlib.o: bzlib.c +- $(CC) $(CFLAGS) -c bzlib.c ++%.sho: %.c ++ $(CC) $(CFLAGS) -o $@ -c $<