components/pwgen/patches/02-use_libmd_sha1.patch
author Mike Sullivan <Mike.Sullivan@Oracle.COM>
Fri, 07 Apr 2017 17:56:36 -0700
changeset 7851 f82a18f72950
parent 5841 97e8c4dc6a82
permissions -rw-r--r--
Close of build 122.

Developed in-house, as the community seems to be back it can be
provided back upstream.

Makes pwgen to use Solaris' implementation of SHA1.

--- pwgen-2.07/configure.in.orig	Fri Apr 22 04:49:40 2016
+++ pwgen-2.07/configure.in	Fri Apr 22 04:52:17 2016
@@ -8,4 +8,23 @@
 AC_PATH_PROG(PERL, perl, perl)
 AC_CHECK_FUNCS(getopt_long)
 AC_CHECK_HEADERS(getopt.h)
+pwgen_sha="internal"
+SHA_OBJ=""
+SHA_SRC=""
+SHA_LIB=""
+SHA_HEAD=""
+AC_CHECK_LIB(md, SHA1Init, [pwgen_sha="solaris"])
+if test x"$pwgen_sha" = x"internal" ; then
+    CFLAGS="${CFLAGS} -DSHA_INTERNAL"
+    SHA_OBJ="sha1.o"
+    SHA_SRC="sha1.c"
+    SHA_HEAD="sha1.h"
+elif test x"$pwgen_sha" = x"solaris" ; then
+    SHA_LIB="-lmd"
+    CFLAGS="${CFLAGS} -DSHA_SOLARIS"
+fi
+AC_SUBST(SHA_OBJ)
+AC_SUBST(SHA_SRC)
+AC_SUBST(SHA_LIB)
+AC_SUBST(SHA_HEAD)
 AC_OUTPUT(Makefile)
--- pwgen-2.07/Makefile.in.orig	Fri Apr 22 04:52:43 2016
+++ pwgen-2.07/Makefile.in	Fri Apr 22 04:56:18 2016
@@ -20,7 +20,7 @@
 CFLAGS = @CFLAGS@ $(WALL_OPTS)
 CPPFLAGS = @CPPFLAGS@
 ALL_CFLAGS = $(CPPFLAGS) $(DEFS) $(USE_WFLAGS) $(CFLAGS) $(XTRA_CFLAGS) 
-LDFLAGS = @LDFLAGS@
+LDFLAGS = @LDFLAGS@ @SHA_LIB@
 RM = @RM@
 MV = @MV@
 SED = @SED@
@@ -32,9 +32,9 @@
 .c.o:
 	$(CC) -c $(ALL_CFLAGS) $< -o $@
 
-OBJS= pwgen.o pw_phonemes.o pw_rand.o randnum.o sha1.o sha1num.o
+OBJS= pwgen.o pw_phonemes.o pw_rand.o randnum.o @SHA_OBJ@ sha1num.o
 
-SRCS= pwgen.c pw_phonemes.c pw_rand.c randnum.c sha1.c sha1num.c
+SRCS= pwgen.c pw_phonemes.c pw_rand.c randnum.c @SHA_SRC@ sha1num.c
 
 
 pwgen: $(OBJS)
@@ -128,4 +128,4 @@
 pw_rand.o: pw_rand.c pwgen.h
 randnum.o: randnum.c pwgen.h
 sha1.o: sha1.c sha1.h 
-sha1num.o: sha1num.c sha1.h pwgen.h
+sha1num.o: sha1num.c @SHA_HEAD@ pwgen.h