libpcap: fix dependency of install-shared-so make target
There seems to be a situation in which a rebuild of libpcap.so is triggered in the install step of the libpcap Makefile. libpcap.so is the wrong target, leading to the build failure reported in [1]. Fix the dependency of install-shared-so to $(SHAREDLIB) so the build can succeed in this case. [1] https://dev.openwrt.org/ticket/19894 Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
This commit is contained in:
		| @@ -3,7 +3,7 @@ build a shared library. | |||||||
|  |  | ||||||
| --- a/Makefile.in | --- a/Makefile.in | ||||||
| +++ b/Makefile.in | +++ b/Makefile.in | ||||||
| @@ -40,6 +40,14 @@ mandir = @mandir@ | @@ -38,6 +38,14 @@ mandir = @mandir@ | ||||||
|  srcdir = @srcdir@ |  srcdir = @srcdir@ | ||||||
|  VPATH = @srcdir@ |  VPATH = @srcdir@ | ||||||
|   |   | ||||||
| @@ -18,7 +18,7 @@ build a shared library. | |||||||
|  # |  # | ||||||
|  # You shouldn't need to edit anything below. |  # You shouldn't need to edit anything below. | ||||||
|  # |  # | ||||||
| @@ -63,7 +71,8 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@ | @@ -62,7 +70,8 @@ DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@ | ||||||
|  PROG=libpcap |  PROG=libpcap | ||||||
|   |   | ||||||
|  # Standard CFLAGS |  # Standard CFLAGS | ||||||
| @@ -28,7 +28,7 @@ build a shared library. | |||||||
|   |   | ||||||
|  INSTALL = @INSTALL@ |  INSTALL = @INSTALL@ | ||||||
|  INSTALL_PROGRAM = @INSTALL_PROGRAM@ |  INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||||||
| @@ -83,7 +92,11 @@ YACC = @V_YACC@ | @@ -82,7 +91,11 @@ YACC = @V_YACC@ | ||||||
|  # problem if you don't own the file but can write to the directory. |  # problem if you don't own the file but can write to the directory. | ||||||
|  .c.o: |  .c.o: | ||||||
|  	@rm -f $@ |  	@rm -f $@ | ||||||
| @@ -39,9 +39,9 @@ build a shared library. | |||||||
| +	@rm -f $@ | +	@rm -f $@ | ||||||
| +	$(CC) -fPIC $(FULL_CFLAGS) -c -o $@ $(srcdir)/$*.c | +	$(CC) -fPIC $(FULL_CFLAGS) -c -o $@ $(srcdir)/$*.c | ||||||
|   |   | ||||||
|  PSRC =	pcap-@V_PCAP@.c @USB_SRC@ @BT_SRC@ @CAN_SRC@ @NETFILTER_SRC@ @CANUSB_SRC@ @DBUS_SRC@ |  PSRC =	pcap-@V_PCAP@.c @USB_SRC@ @BT_SRC@ @BT_MONITOR_SRC@ @CAN_SRC@ @NETFILTER_SRC@ @CANUSB_SRC@ @DBUS_SRC@ | ||||||
|  FSRC =  fad-@V_FINDALLDEVS@.c |  FSRC =  fad-@V_FINDALLDEVS@.c | ||||||
| @@ -99,6 +112,7 @@ SRC =	$(PSRC) $(FSRC) $(CSRC) $(SSRC) $( | @@ -98,6 +111,7 @@ SRC =	$(PSRC) $(FSRC) $(CSRC) $(SSRC) $( | ||||||
|  # We would like to say "OBJ = $(SRC:.c=.o)" but Ultrix's make cannot |  # We would like to say "OBJ = $(SRC:.c=.o)" but Ultrix's make cannot | ||||||
|  # hack the extra indirection |  # hack the extra indirection | ||||||
|  OBJ =	$(PSRC:.c=.o) $(FSRC:.c=.o) $(CSRC:.c=.o) $(SSRC:.c=.o) $(GENSRC:.c=.o) $(LIBOBJS) |  OBJ =	$(PSRC:.c=.o) $(FSRC:.c=.o) $(CSRC:.c=.o) $(SSRC:.c=.o) $(GENSRC:.c=.o) $(LIBOBJS) | ||||||
| @@ -58,7 +58,7 @@ build a shared library. | |||||||
|   |   | ||||||
|  MAN1 = pcap-config.1 |  MAN1 = pcap-config.1 | ||||||
|   |   | ||||||
| @@ -363,7 +377,7 @@ libpcap.a: $(OBJ) | @@ -365,7 +379,7 @@ libpcap.a: $(OBJ) | ||||||
|  	$(AR) rc $@ $(OBJ) $(ADDLARCHIVEOBJS) |  	$(AR) rc $@ $(OBJ) $(ADDLARCHIVEOBJS) | ||||||
|  	$(RANLIB) $@ |  	$(RANLIB) $@ | ||||||
|   |   | ||||||
| @@ -67,7 +67,7 @@ build a shared library. | |||||||
|   |   | ||||||
|  libpcap.so: $(OBJ) |  libpcap.so: $(OBJ) | ||||||
|  	@rm -f $@ |  	@rm -f $@ | ||||||
| @@ -441,6 +455,13 @@ libpcap.shareda: $(OBJ) | @@ -443,6 +457,13 @@ libpcap.shareda: $(OBJ) | ||||||
|  # |  # | ||||||
|  libpcap.none: |  libpcap.none: | ||||||
|   |   | ||||||
| @@ -79,9 +79,9 @@ build a shared library. | |||||||
| +	ln -s $(SOLIBRARY).$(MAJ) $(SOLIBRARY) | +	ln -s $(SOLIBRARY).$(MAJ) $(SOLIBRARY) | ||||||
| + | + | ||||||
|  scanner.c: $(srcdir)/scanner.l |  scanner.c: $(srcdir)/scanner.l | ||||||
|  	@rm -f $@ |  	@rm -f $@ $@.bottom | ||||||
|  	$(srcdir)/runlex.sh $(LEX) -o$@ $< |  	$(srcdir)/runlex.sh $(LEX) -o$@ $< | ||||||
| @@ -448,6 +469,9 @@ scanner.c: $(srcdir)/scanner.l | @@ -453,6 +474,9 @@ scanner.c: $(srcdir)/scanner.l | ||||||
|  scanner.o: scanner.c tokdefs.h |  scanner.o: scanner.c tokdefs.h | ||||||
|  	$(CC) $(FULL_CFLAGS) -c scanner.c |  	$(CC) $(FULL_CFLAGS) -c scanner.c | ||||||
|   |   | ||||||
| @@ -91,7 +91,7 @@ build a shared library. | |||||||
|  pcap.o: version.h |  pcap.o: version.h | ||||||
|   |   | ||||||
|  tokdefs.h: grammar.c |  tokdefs.h: grammar.c | ||||||
| @@ -461,9 +485,16 @@ grammar.o: grammar.c | @@ -466,9 +490,16 @@ grammar.o: grammar.c | ||||||
|  	@rm -f $@ |  	@rm -f $@ | ||||||
|  	$(CC) $(FULL_CFLAGS) -Dyylval=pcap_lval -c grammar.c |  	$(CC) $(FULL_CFLAGS) -Dyylval=pcap_lval -c grammar.c | ||||||
|   |   | ||||||
| @@ -108,7 +108,7 @@ build a shared library. | |||||||
|  snprintf.o: $(srcdir)/missing/snprintf.c |  snprintf.o: $(srcdir)/missing/snprintf.c | ||||||
|  	$(CC) $(FULL_CFLAGS) -o $@ -c $(srcdir)/missing/snprintf.c |  	$(CC) $(FULL_CFLAGS) -o $@ -c $(srcdir)/missing/snprintf.c | ||||||
|   |   | ||||||
| @@ -501,6 +532,9 @@ bpf_filter.c: $(srcdir)/bpf/net/bpf_filt | @@ -506,6 +537,9 @@ bpf_filter.c: $(srcdir)/bpf/net/bpf_filt | ||||||
|  bpf_filter.o: bpf_filter.c |  bpf_filter.o: bpf_filter.c | ||||||
|  	$(CC) $(FULL_CFLAGS) -c bpf_filter.c |  	$(CC) $(FULL_CFLAGS) -c bpf_filter.c | ||||||
|   |   | ||||||
| @@ -118,8 +118,12 @@ build a shared library. | |||||||
|  # |  # | ||||||
|  # Generate the pcap-config script. |  # Generate the pcap-config script. | ||||||
|  # |  # | ||||||
| @@ -618,11 +652,9 @@ install-shared: install-shared-$(DYEXT) | @@ -622,14 +656,12 @@ install: install-shared install-archive | ||||||
|  install-shared-so: libpcap.so |  		    $(DESTDIR)$(mandir)/man@MAN_MISC_INFO@/`echo $$i | sed 's/.manmisc.in/.@MAN_MISC_INFO@/'`; done | ||||||
|  |   | ||||||
|  |  install-shared: install-shared-$(DYEXT) | ||||||
|  | -install-shared-so: libpcap.so | ||||||
|  | +install-shared-so: $(SHAREDLIB) | ||||||
|  	[ -d $(DESTDIR)$(libdir) ] || \ |  	[ -d $(DESTDIR)$(libdir) ] || \ | ||||||
|  	    (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir)) |  	    (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir)) | ||||||
| -	VER=`cat $(srcdir)/VERSION`; \ | -	VER=`cat $(srcdir)/VERSION`; \ | ||||||
| @@ -135,7 +139,7 @@ build a shared library. | |||||||
|  	    (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir)) |  	    (mkdir -p $(DESTDIR)$(libdir); chmod 755 $(DESTDIR)$(libdir)) | ||||||
| --- a/aclocal.m4 | --- a/aclocal.m4 | ||||||
| +++ b/aclocal.m4 | +++ b/aclocal.m4 | ||||||
| @@ -440,7 +440,7 @@ AC_DEFUN(AC_LBL_SHLIBS_INIT, | @@ -438,7 +438,7 @@ AC_DEFUN(AC_LBL_SHLIBS_INIT, | ||||||
|  			esac |  			esac | ||||||
|  			;; |  			;; | ||||||
|  		    esac |  		    esac | ||||||
| @@ -144,7 +148,7 @@ build a shared library. | |||||||
|  		    V_SONAME_OPT="-Wl,-soname," |  		    V_SONAME_OPT="-Wl,-soname," | ||||||
|  		    V_RPATH_OPT="-Wl,-rpath," |  		    V_RPATH_OPT="-Wl,-rpath," | ||||||
|  		    ;; |  		    ;; | ||||||
| @@ -503,7 +503,7 @@ AC_DEFUN(AC_LBL_SHLIBS_INIT, | @@ -501,7 +501,7 @@ AC_DEFUN(AC_LBL_SHLIBS_INIT, | ||||||
|  		    # |  		    # | ||||||
|  		    # "cc" is GCC. |  		    # "cc" is GCC. | ||||||
|  		    # |  		    # | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Matthias Schiffer
					Matthias Schiffer