Subject: pkg/4924: gdbm pkg doesn't build shared library
To: None <gnats-bugs@gnats.netbsd.org>
From: Jaromir Dolecek <dolecek@ics.muni.cz>
List: netbsd-bugs
Date: 01/31/1998 15:35:34
>Number:         4924
>Category:       pkg
>Synopsis:       gdbm pkg doesn't build shared library
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    gnats-admin (GNATS administrator)
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Sat Jan 31 06:35:04 1998
>Last-Modified:
>Originator:     Jaromir Dolecek
>Organization:
	ICS MU, Brno, Czech Republic
>Release:        1.3
>Environment:
	
System: NetBSD saruman.ics.muni.cz 1.3 NetBSD 1.3 (SARUMAN) #3: Wed Jan 21 13:29:49 MET 1998 dolecek@saruman.ics.muni.cz:/usr/home/dolecek/N13/usr/src/sys/arch/i386/compile/SARUMAN i386


>Description:
	see subject

>How-To-Repeat:
	make install in pkgsrc/databases/gdbm
	look to /usr/pkg/lib - there is only static libgdbm
>Fix:

	This patch adds patch-ab to patches/, deletes code
	dealing with Makefile.in from patch-aa and finally
	adds shared library to PLIST

*** patches/patch-aa.orig	Fri Nov 21 01:54:00 1997
--- patches/patch-aa	Sat Jan 31 15:18:13 1998
***************
*** 10,22 ****
   @c @setchapternewpage odd
   @comment %**end of header (This is for running Texinfo on a region.)
   
- --- Makefile.in	1997/11/20 11:43:20	1.1
- +++ Makefile.in	1997/11/20 11:44:10
- @@ -94,6 +94,7 @@
-  
-  install: libgdbm.a gdbm.h gdbm.info
-  	$(INSTALL_DATA) libgdbm.a $(libdir)/libgdbm.a
- +	$(RANLIB) $(libdir)/libgdbm.a
-  	$(INSTALL_DATA) gdbm.h $(includedir)/gdbm.h
-  	$(INSTALL_DATA) $(srcdir)/gdbm.3 $(man3dir)/gdbm.3
-  	$(INSTALL_DATA) $(srcdir)/gdbm.info $(infodir)/gdbm.info
--- 10,12 ----
*** patches/patch-ab.orig	Sat Jan 31 15:32:47 1998
--- patches/patch-ab	Sat Jan 31 15:27:17 1998
***************
*** 0 ****
--- 1,70 ----
+ --- Makefile.in.orig	Sun May 15 11:28:49 1994
+ +++ Makefile.in	Sat Jan 31 15:23:40 1998
+ @@ -74,9 +74,10 @@
+  
+  TEXI_F = gdbm.info
+       
+ -SRCS = $(DBM_CF) $(NDBM_CF) $(GDBM_CF) $(TEST_CF)
+ +# SRCS = $(DBM_CF) $(NDBM_CF) $(GDBM_CF) $(TEST_CF)
+ +SRCS = $(DBM_CF) $(NDBM_CF) $(GDBM_CF)
+  
+ -OBJS = $(DBM_OF) $(NDBM_OF) $(GDBM_OF) @ALLOCA@
+ +# OBJS = $(DBM_OF) $(NDBM_OF) $(GDBM_OF) @ALLOCA@
+  
+  HDRS = gdbmdefs.h extern.h gdbmerrno.h systems.h dbm.h ndbm.h gdbmconst.h \
+  	proto.h
+ @@ -88,12 +89,21 @@
+  
+  DISTFILES = $(SRCS) $(HDRS) $(MSCFILES)
+  
+ -all: libgdbm.a
+ +# for <bsd.lib.mk> to build shared lib easily
+ +LIB = gdbm
+ +SHLIB_MAJOR=1
+ +SHLIB_MINOR=7
+ +NOPROFILE=1
+ +NOLINT=1
+ +
+ +all: libgdbm.a libgdbm.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
+  
+  progs: $(PROGS)
+  
+  install: libgdbm.a gdbm.h gdbm.info
+  	$(INSTALL_DATA) libgdbm.a $(libdir)/libgdbm.a
+ +	$(RANLIB) $(libdir)/libgdbm.a
+ +	$(INSTALL_DATA) libgdbm.so.${SHLIB_MAJOR}.${SHLIB_MINOR} $(libdir)
+  	$(INSTALL_DATA) gdbm.h $(includedir)/gdbm.h
+  	$(INSTALL_DATA) $(srcdir)/gdbm.3 $(man3dir)/gdbm.3
+  	$(INSTALL_DATA) $(srcdir)/gdbm.info $(infodir)/gdbm.info
+ @@ -102,10 +112,10 @@
+  	$(INSTALL_DATA) $(srcdir)/dbm.h $(includedir)/dbm.h
+  	$(INSTALL_DATA) $(srcdir/ndbm.h $(includedir)/ndbm.h
+  
+ -libgdbm.a: $(OBJS) gdbm.h
+ -	rm -f libgdbm.a
+ -	ar q libgdbm.a $(OBJS)
+ -	$(RANLIB) libgdbm.a
+ +#libgdbm.a: $(OBJS) gdbm.h
+ +#	rm -f libgdbm.a
+ +#	ar q libgdbm.a $(OBJS)
+ +#	$(RANLIB) libgdbm.a
+  
+  gdbm.h:	gdbm.proto gdbmerrno.h gdbm.proto2
+  	rm -f gdbm.h
+ @@ -157,8 +167,8 @@
+  gdbm.dvi:
+  	$(TEXI2DVI) $(srcdir)/gdbm.texinfo
+  
+ -clean:
+ -	rm -f $(PROGS) $(TEX_F) *.o core junk*
+ +#clean:
+ +#	rm -f $(PROGS) $(TEX_F) *.o core junk*
+  
+  mostlyclean: clean
+  
+ @@ -227,3 +237,5 @@
+  testndbm.o:	autoconf.h ndbm.h
+  tdbm.o:		autoconf.h
+  conv2gdbm.o:	autoconf.h gdbm.h
+ +
+ +.include <bsd.lib.mk>
*** pkg/PLIST.orig	Sat Jan 31 15:12:57 1998
--- pkg/PLIST	Sat Jan 31 14:38:47 1998
***************
*** 4,7 ****
--- 4,10 ----
  info/gdbm.info
  @exec   %D/bin/install-info          %D/info/gdbm.info %D/info/dir
  lib/libgdbm.a
+ lib/libgdbm.so.1.7
+ @exec /sbin/ldconfig || /usr/bin/true
+ @unexec /sbin/ldconfig || /usr/bin/true
  man/man3/gdbm.3.gz
>Audit-Trail:
>Unformatted: