95 lines
3.0 KiB
Diff
95 lines
3.0 KiB
Diff
|
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.
|
||
|
|
||
|
Upstream-Status: Pending
|
||
|
|
||
|
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'
|