aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch')
-rw-r--r--meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch92
1 files changed, 92 insertions, 0 deletions
diff --git a/meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch b/meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch
new file mode 100644
index 0000000000..1e81f8401b
--- /dev/null
+++ b/meta/recipes-bsp/pciutils/pciutils-3.1.5/lib-build-fix.patch
@@ -0,0 +1,92 @@
+Link directly to lib/libpci.so.3.1.5 will hard code this versioned
+string into lspci and other utilities, which is not desirable and
+won't work. In the other hand, linking to a symbolic link lib/libpci.so
+doesn't have this issue.
+
+7/30/2010 - created by Qing He <qing.he@intel.com>
+
+diff --git a/Makefile b/Makefile
+index 1b48e18..21af4b3 100644
+--- a/Makefile
++++ b/Makefile
+@@ -51,9 +51,9 @@ PCIINC_INS=lib/config.h lib/header.h lib/pci.h lib/types.h
+
+ export
+
+-all: lib/$(PCILIB) lspci setpci example lspci.8 setpci.8 pcilib.7 update-pciids update-pciids.8 $(PCI_IDS) pcimodules pcimodules.8
++all: lib/$(PCILIB_DEV) lspci setpci example lspci.8 setpci.8 pcilib.7 update-pciids update-pciids.8 $(PCI_IDS) pcimodules pcimodules.8
+
+-lib/$(PCILIB): $(PCIINC) force
++lib/$(PCILIB) lib/$(PCILIB_DEV): $(PCIINC) force
+ $(MAKE) -C lib all
+
+ force:
+@@ -61,9 +61,9 @@ force:
+ lib/config.h lib/config.mk:
+ cd lib && ./configure
+
+-pcimodules: pcimodules.o common.o lib/$(PCILIB)
+-lspci: lspci.o ls-vpd.o ls-caps.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/$(PCILIB)
+-setpci: setpci.o common.o lib/$(PCILIB)
++pcimodules: pcimodules.o common.o lib/$(PCILIB_DEV)
++lspci: lspci.o ls-vpd.o ls-caps.o ls-ecaps.o ls-kernel.o ls-tree.o ls-map.o common.o lib/$(PCILIB_DEV)
++setpci: setpci.o common.o lib/$(PCILIB_DEV)
+
+ pcimodules.o: pcimodules.c pciutils.h
+ LSPCIINC=lspci.h pciutils.h $(PCIINC)
+@@ -83,7 +83,7 @@ update-pciids: update-pciids.sh
+ chmod +x $@
+
+ # The example of use of libpci
+-example: example.o lib/$(PCILIB)
++example: example.o lib/$(PCILIB_DEV)
+ example.o: example.c $(PCIINC)
+
+ %: %.o
+diff --git a/lib/Makefile b/lib/Makefile
+index 1eb06a5..a8dab56 100644
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -42,7 +42,7 @@ ifdef PCI_HAVE_PM_NBSD_LIBPCI
+ OBJS += nbsd-libpci
+ endif
+
+-all: $(PCILIB) $(PCILIBPC)
++all: $(PCILIB_DEV) $(PCILIBPC)
+
+ ifeq ($(SHARED),no)
+ $(PCILIB): $(addsuffix .o,$(OBJS))
+@@ -53,6 +53,9 @@ else
+ CFLAGS += -fPIC -fvisibility=hidden
+ $(PCILIB): $(addsuffix .o,$(OBJS))
+ $(CC) -shared $(LDFLAGS) $(SONAME) -Wl,--version-script=libpci.ver -o $@ $^ $(LIB_LDLIBS)
++
++$(PCILIB_DEV): $(PCILIB)
++ ln -s $< $@
+ endif
+
+ $(PCILIBPC): libpci.pc.in
+diff --git a/lib/configure b/lib/configure
+index eec225a..4318b05 100755
+--- a/lib/configure
++++ b/lib/configure
+@@ -174,16 +193,18 @@ fi
+ echo "Checking whether to build a shared library... $SHARED (set manually)"
+ if [ "$SHARED" = no ] ; then
+ echo >>$m 'PCILIB=$(LIBNAME).a'
++ echo >>$m 'PCILIB_DEV=$(LIBNAME).a'
+ echo >>$m 'LDLIBS=$(WITH_LIBS)'
+ echo >>$m 'LIB_LDLIBS='
+ else
+ echo >>$m 'PCILIB=$(LIBNAME).so.$(VERSION)'
++ echo >>$m 'PCILIB_DEV=$(LIBNAME).so'
+ # We link the dependencies _to_ the library, so we do not need explicit deps in .pc
+ echo >>$m 'LDLIBS='
+ echo >>$m 'LIB_LDLIBS=$(WITH_LIBS)'
+ echo >>$c '#define PCI_SHARED_LIB'
+ if [ "$SHARED" = yes ] ; then
+- echo >>$m 'SONAME=-Wl,-soname,$(LIBNAME).so$(ABI_VERSION)'
++ echo >>$m 'SONAME=-Wl,-soname -Wl,$(LIBNAME).so$(ABI_VERSION)'
+ fi
+ fi
+ echo >>$m 'PCILIBPC=$(LIBNAME).pc'