From cf783fe54cbc93740842da4524ece4fba9bee184 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Wed, 7 Jan 1998 11:07:05 +0000 Subject: [PATCH] patch release 0.1.1 --- Makefile.am | 2 +- Makefile.in | 2 +- VERSION | 1 + cipher/Makefile.am | 5 +- cipher/Makefile.in | 10 +-- cipher/rmd160.c | 206 +++++++++++++++++++++---------------------- configure.in | 32 +++++-- mpi/Makefile.am | 12 +-- mpi/Makefile.in | 10 +-- mpi/hppa/mpih-add1.S | 4 +- 10 files changed, 143 insertions(+), 141 deletions(-) create mode 100644 VERSION diff --git a/Makefile.am b/Makefile.am index 4a2c3a20f..dea36e96a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,7 +1,7 @@ ## Process this file with automake to produce Makefile.in SUBDIRS = util mpi cipher tools g10 -EXTRA_DIST = +EXTRA_DIST = VERSION diff --git a/Makefile.in b/Makefile.in index 61e204f85..ff5231486 100644 --- a/Makefile.in +++ b/Makefile.in @@ -39,7 +39,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ transform = @program_transform_name@ SUBDIRS = util mpi cipher tools g10 -EXTRA_DIST = +EXTRA_DIST = VERSION ACCONFIG = acconfig.h CONFIG_HEADER_IN = config.h.in mkinstalldirs = $(top_srcdir)/scripts/mkinstalldirs diff --git a/VERSION b/VERSION new file mode 100644 index 000000000..17e51c385 --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +0.1.1 diff --git a/cipher/Makefile.am b/cipher/Makefile.am index 17952852f..2f0792cb9 100644 --- a/cipher/Makefile.am +++ b/cipher/Makefile.am @@ -1,6 +1,7 @@ ## Process this file with automake to produce Makefile.in INCLUDES = -I$(top_srcdir)/include +EXTRA_DIST = @CIPHER_EXTRA_DIST@ noinst_LIBRARIES = cipher @@ -21,9 +22,9 @@ cipher_SOURCES = blowfish.c \ sha1.c \ dsa.h \ dsa.c \ - rsa.c \ - rsa.h \ md.c \ smallprime.c +cipher_LIBADD = @CIPHER_EXTRA_OBJS@ + diff --git a/cipher/Makefile.in b/cipher/Makefile.in index f9beb30b9..f71937966 100644 --- a/cipher/Makefile.in +++ b/cipher/Makefile.in @@ -39,6 +39,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ transform = @program_transform_name@ INCLUDES = -I$(top_srcdir)/include +EXTRA_DIST = @CIPHER_EXTRA_DIST@ noinst_LIBRARIES = cipher @@ -58,10 +59,10 @@ cipher_SOURCES = blowfish.c \ sha1.c \ dsa.h \ dsa.c \ - rsa.c \ - rsa.h \ md.c \ smallprime.c + +cipher_LIBADD = @CIPHER_EXTRA_OBJS@ mkinstalldirs = $(top_srcdir)/scripts/mkinstalldirs CONFIG_HEADER = ../config.h LIBRARIES = $(noinst_LIBRARIES) @@ -80,9 +81,8 @@ LIBS = @LIBS@ COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) LINK = $(CC) $(LDFLAGS) -o $@ -cipher_LIBADD = cipher_OBJECTS = blowfish.o elgamal.o gost.o md5.o primegen.o random.o \ -rmd160.o sha1.o dsa.o rsa.o md.o smallprime.o +rmd160.o sha1.o dsa.o md.o smallprime.o EXTRA_cipher_SOURCES = LIBFILES = libcipher.a AR = ar @@ -102,7 +102,7 @@ TAR = tar DEP_FILES = $(srcdir)/.deps/blowfish.P $(srcdir)/.deps/dsa.P \ $(srcdir)/.deps/elgamal.P $(srcdir)/.deps/gost.P $(srcdir)/.deps/md.P \ $(srcdir)/.deps/md5.P $(srcdir)/.deps/primegen.P \ -$(srcdir)/.deps/random.P $(srcdir)/.deps/rmd160.P $(srcdir)/.deps/rsa.P \ +$(srcdir)/.deps/random.P $(srcdir)/.deps/rmd160.P \ $(srcdir)/.deps/sha1.P $(srcdir)/.deps/smallprime.P SOURCES = $(cipher_SOURCES) OBJECTS = $(cipher_OBJECTS) diff --git a/cipher/rmd160.c b/cipher/rmd160.c index 24c904a5b..e8c424fa6 100644 --- a/cipher/rmd160.c +++ b/cipher/rmd160.c @@ -1,5 +1,5 @@ -/* rmd160.c - RIPE-MD160 - * Copyright (c) 1997 by Werner Koch (dd9jn) +/* rmd160.c - RIPE-MD160 + * Copyright (c) 1997 by Werner Koch (dd9jn) * * This file is part of G10. * @@ -48,20 +48,20 @@ * * nonlinear functions at bit level: exor, mux, -, mux, - * - * f(j, x, y, z) = x XOR y XOR z (0 <= j <= 15) + * f(j, x, y, z) = x XOR y XOR z (0 <= j <= 15) * f(j, x, y, z) = (x AND y) OR (NOT(x) AND z) (16 <= j <= 31) - * f(j, x, y, z) = (x OR NOT(y)) XOR z (32 <= j <= 47) + * f(j, x, y, z) = (x OR NOT(y)) XOR z (32 <= j <= 47) * f(j, x, y, z) = (x AND z) OR (y AND NOT(z)) (48 <= j <= 63) - * f(j, x, y, z) = x XOR (y OR NOT(z)) (64 <= j <= 79) + * f(j, x, y, z) = x XOR (y OR NOT(z)) (64 <= j <= 79) * * * added constants (hexadecimal) * - * K(j) = 0x00000000 (0 <= j <= 15) - * K(j) = 0x5A827999 (16 <= j <= 31) int(2**30 x sqrt(2)) - * K(j) = 0x6ED9EBA1 (32 <= j <= 47) int(2**30 x sqrt(3)) - * K(j) = 0x8F1BBCDC (48 <= j <= 63) int(2**30 x sqrt(5)) - * K(j) = 0xA953FD4E (64 <= j <= 79) int(2**30 x sqrt(7)) + * K(j) = 0x00000000 (0 <= j <= 15) + * K(j) = 0x5A827999 (16 <= j <= 31) int(2**30 x sqrt(2)) + * K(j) = 0x6ED9EBA1 (32 <= j <= 47) int(2**30 x sqrt(3)) + * K(j) = 0x8F1BBCDC (48 <= j <= 63) int(2**30 x sqrt(5)) + * K(j) = 0xA953FD4E (64 <= j <= 79) int(2**30 x sqrt(7)) * K'(j) = 0x50A28BE6 (0 <= j <= 15) int(2**30 x cbrt(2)) * K'(j) = 0x5C4DD124 (16 <= j <= 31) int(2**30 x cbrt(3)) * K'(j) = 0x6D703EF3 (32 <= j <= 47) int(2**30 x cbrt(5)) @@ -71,7 +71,7 @@ * * selection of message word * - * r(j) = j (0 <= j <= 15) + * r(j) = j (0 <= j <= 15) * r(16..31) = 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8 * r(32..47) = 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12 * r(48..63) = 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2 @@ -100,7 +100,7 @@ * initial value (hexadecimal) * * h0 = 0x67452301; h1 = 0xEFCDAB89; h2 = 0x98BADCFE; h3 = 0x10325476; - * h4 = 0xC3D2E1F0; + * h4 = 0xC3D2E1F0; * * * RIPEMD-160: pseudo-code @@ -112,17 +112,17 @@ * * * for i := 0 to t-1 { - * A := h0; B := h1; C := h2; D = h3; E = h4; - * A' := h0; B' := h1; C' := h2; D' = h3; E' = h4; - * for j := 0 to 79 { - * T := rol_s(j)(A [+] f(j, B, C, D) [+] X[i][r(j)] [+] K(j)) [+] E; - * A := E; E := D; D := rol_10(C); C := B; B := T; - * T := rol_s'(j)(A' [+] f(79-j, B', C', D') [+] X[i][r'(j)] - [+] K'(j)) [+] E'; - * A' := E'; E' := D'; D' := rol_10(C'); C' := B'; B' := T; - * } - * T := h1 [+] C [+] D'; h1 := h2 [+] D [+] E'; h2 := h3 [+] E [+] A'; - * h3 := h4 [+] A [+] B'; h4 := h0 [+] B [+] C'; h0 := T; + * A := h0; B := h1; C := h2; D = h3; E = h4; + * A' := h0; B' := h1; C' := h2; D' = h3; E' = h4; + * for j := 0 to 79 { + * T := rol_s(j)(A [+] f(j, B, C, D) [+] X[i][r(j)] [+] K(j)) [+] E; + * A := E; E := D; D := rol_10(C); C := B; B := T; + * T := rol_s'(j)(A' [+] f(79-j, B', C', D') [+] X[i][r'(j)] + [+] K'(j)) [+] E'; + * A' := E'; E' := D'; D' := rol_10(C'); C' := B'; B' := T; + * } + * T := h1 [+] C [+] D'; h1 := h2 [+] D [+] E'; h2 := h3 [+] E [+] A'; + * h3 := h4 [+] A [+] B'; h4 := h0 [+] B [+] C'; h0 := T; * } */ @@ -159,29 +159,29 @@ static void transform( RMDHANDLE hd, byte *data ) { static int r[80] = { - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, - 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12, - 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2, - 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13 }; + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, + 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12, + 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2, + 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13 }; static int rr[80] = { - 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, - 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, - 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13, - 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14, - 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11 }; + 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, + 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, + 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13, + 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14, + 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11 }; static int s[80] = { - 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, - 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, - 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5, - 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12, - 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 }; + 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, + 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, + 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5, + 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12, + 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6 }; static int ss[80] = { - 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, - 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, - 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5, - 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8, - 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 }; + 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, + 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, + 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5, + 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8, + 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11 }; u32 a,b,c,d,e,aa,bb,cc,dd,ee,t; int rbits, j; #ifdef BIG_ENDIAN_HOST @@ -190,14 +190,14 @@ transform( RMDHANDLE hd, byte *data ) u32 *x; #endif -#define K(a) ( (a) < 16 ? 0x00000000 : \ - (a) < 32 ? 0x5A827999 : \ - (a) < 48 ? 0x6ED9EBA1 : \ - (a) < 64 ? 0x8F1BBCDC : 0xA953FD4E ) -#define KK(a) ( (a) < 16 ? 0x50A28BE6 : \ - (a) < 32 ? 0x5C4DD124 : \ - (a) < 48 ? 0x6D703EF3 : \ - (a) < 64 ? 0x7A6D76E9 : 0x00000000 ) +#define K(a) ( (a) < 16 ? 0x00000000 : \ + (a) < 32 ? 0x5A827999 : \ + (a) < 48 ? 0x6ED9EBA1 : \ + (a) < 64 ? 0x8F1BBCDC : 0xA953FD4E ) +#define KK(a) ( (a) < 16 ? 0x50A28BE6 : \ + (a) < 32 ? 0x5C4DD124 : \ + (a) < 48 ? 0x6D703EF3 : \ + (a) < 64 ? 0x7A6D76E9 : 0x00000000 ) #define F0(x,y,z) ( (x) ^ (y) ^ (z) ) #define F1(x,y,z) ( ((x) & (y)) | (~(x) & (z)) ) @@ -205,10 +205,10 @@ transform( RMDHANDLE hd, byte *data ) #define F3(x,y,z) ( ((x) & (z)) | ((y) & ~(z)) ) #define F4(x,y,z) ( (x) ^ ((y) | ~(z)) ) #define F(a,x,y,z) ( (a) < 16 ? F0((x),(y),(z)) : \ - (a) < 32 ? F1((x),(y),(z)) : \ - (a) < 48 ? F2((x),(y),(z)) : \ - (a) < 64 ? F3((x),(y),(z)) : \ - F4((x),(y),(z)) ) + (a) < 32 ? F1((x),(y),(z)) : \ + (a) < 48 ? F2((x),(y),(z)) : \ + (a) < 64 ? F3((x),(y),(z)) : \ + F4((x),(y),(z)) ) #define rol(n,x) ( ((x) << (n)) | ((x) >> (32-(n))) ) @@ -217,14 +217,14 @@ transform( RMDHANDLE hd, byte *data ) { int i; byte *p2, *p1; for(i=0, p1=data, p2=(byte*)x; i < 16; i++, p2 += 4 ) { - p2[3] = *p1++; - p2[2] = *p1++; - p2[1] = *p1++; - p2[0] = *p1++; + p2[3] = *p1++; + p2[2] = *p1++; + p2[1] = *p1++; + p2[0] = *p1++; } } #else - x = data; + x = (u32*)data; #endif a = aa = hd->h0; @@ -234,20 +234,20 @@ transform( RMDHANDLE hd, byte *data ) e = ee = hd->h4; for(j=0; j < 80; j++ ) { - t = a + F( j, b, c, d ) + x[ r[j] ] + K(j); - rbits = s[j]; - a = rol(rbits, t) + e; - c = rol(10,c); - t = a; a = e; e = d; d = c; c = b; b = t; + t = a + F( j, b, c, d ) + x[ r[j] ] + K(j); + rbits = s[j]; + a = rol(rbits, t) + e; + c = rol(10,c); + t = a; a = e; e = d; d = c; c = b; b = t; - t = aa + F(79-j, bb, cc, dd ) + x[ rr[j] ] + KK(j); - rbits = ss[j]; - aa = rol(rbits, t) + ee; - cc = rol(10,cc); - t = aa; aa = ee; ee = dd; dd = cc; cc = bb; bb = t; + t = aa + F(79-j, bb, cc, dd ) + x[ rr[j] ] + KK(j); + rbits = ss[j]; + aa = rol(rbits, t) + ee; + cc = rol(10,cc); + t = aa; aa = ee; ee = dd; dd = cc; cc = bb; bb = t; } - t = hd->h1 + c + dd; + t = hd->h1 + c + dd; hd->h1 = hd->h2 + d + ee; hd->h2 = hd->h3 + e + aa; hd->h3 = hd->h4 + a + bb; @@ -264,7 +264,7 @@ rmd160_open( int secure ) RMDHANDLE hd; hd = secure? m_alloc_secure( sizeof *hd ) - : m_alloc( sizeof *hd ); + : m_alloc( sizeof *hd ); initialize(hd); return hd; } @@ -277,7 +277,7 @@ rmd160_copy( RMDHANDLE a ) assert(a); b = m_is_secure(a)? m_alloc_secure( sizeof *b ) - : m_alloc( sizeof *b ); + : m_alloc( sizeof *b ); memcpy( b, a, sizeof *a ); return b; } @@ -298,7 +298,7 @@ void rmd160_close(RMDHANDLE hd) { if( hd ) - m_free(hd); + m_free(hd); } @@ -310,29 +310,29 @@ void rmd160_write( RMDHANDLE hd, byte *inbuf, size_t inlen) { if( hd->bufcount == 64 ) { /* flush the buffer */ - transform( hd, hd->buffer ); - hd->bufcount = 0; - hd->nblocks++; + transform( hd, hd->buffer ); + hd->bufcount = 0; + hd->nblocks++; } if( !inbuf ) - return; + return; if( hd->bufcount ) { - for( ; inlen && hd->bufcount < 64; inlen-- ) - hd->buffer[hd->bufcount++] = *inbuf++; - rmd160_write( hd, NULL, 0 ); - if( !inlen ) - return; + for( ; inlen && hd->bufcount < 64; inlen-- ) + hd->buffer[hd->bufcount++] = *inbuf++; + rmd160_write( hd, NULL, 0 ); + if( !inlen ) + return; } while( inlen >= 64 ) { - transform( hd, inbuf ); - hd->bufcount = 0; - hd->nblocks++; - inlen -= 64; - inbuf += 64; + transform( hd, inbuf ); + hd->bufcount = 0; + hd->nblocks++; + inlen -= 64; + inbuf += 64; } for( ; inlen && hd->bufcount < 64; inlen-- ) - hd->buffer[hd->bufcount++] = *inbuf++; + hd->buffer[hd->bufcount++] = *inbuf++; } @@ -354,27 +354,27 @@ rmd160_final(RMDHANDLE hd) msb = 0; t = hd->nblocks; if( (lsb = t << 6) < t ) /* multiply by 64 to make a byte count */ - msb++; + msb++; msb += t >> 26; t = lsb; if( (lsb = t + hd->bufcount) < t ) /* add the bufcount */ - msb++; + msb++; t = lsb; if( (lsb = t << 3) < t ) /* multiply by 8 to make a bit count */ - msb++; + msb++; msb += t >> 29; if( hd->bufcount < 56 ) { /* enough room */ - hd->buffer[hd->bufcount++] = 0x80; /* pad */ - while( hd->bufcount < 56 ) - hd->buffer[hd->bufcount++] = 0; /* pad */ + hd->buffer[hd->bufcount++] = 0x80; /* pad */ + while( hd->bufcount < 56 ) + hd->buffer[hd->bufcount++] = 0; /* pad */ } else { /* need one extra block */ - hd->buffer[hd->bufcount++] = 0x80; /* pad character */ - while( hd->bufcount < 64 ) - hd->buffer[hd->bufcount++] = 0; - rmd160_write(hd, NULL, 0); /* flush */; - memset(hd->buffer, 0, 56 ); /* fill next block with zeroes */ + hd->buffer[hd->bufcount++] = 0x80; /* pad character */ + while( hd->bufcount < 64 ) + hd->buffer[hd->bufcount++] = 0; + rmd160_write(hd, NULL, 0); /* flush */; + memset(hd->buffer, 0, 56 ); /* fill next block with zeroes */ } /* append the 64 bit count */ hd->buffer[56] = lsb ; @@ -389,8 +389,8 @@ rmd160_final(RMDHANDLE hd) p = hd->buffer; #ifdef BIG_ENDIAN_HOST - #define X(a) do { *p++ = hd->h##a ; *p++ = hd->h##a >> 8; \ - *p++ = hd->h##a >> 16; *p++ = hd->h##a >> 24; } while(0) + #define X(a) do { *p++ = hd->h##a ; *p++ = hd->h##a >> 8; \ + *p++ = hd->h##a >> 16; *p++ = hd->h##a >> 24; } while(0) #else /* little endian */ #define X(a) do { *(u32*)p = hd->h##a ; p += 4; } while(0) #endif @@ -401,7 +401,7 @@ rmd160_final(RMDHANDLE hd) X(4); #undef X - initialize( hd ); /* prepare for next cycle */ + initialize( hd ); /* prepare for next cycle */ return hd->buffer; /* now contains the digest */ } diff --git a/configure.in b/configure.in index 13ae37b23..65ae82e27 100644 --- a/configure.in +++ b/configure.in @@ -8,7 +8,7 @@ AC_CONFIG_AUX_DIR(scripts) AC_CONFIG_HEADER(config.h) -VERSION=0.1.0 +VERSION=`cat ./VERSION` PACKAGE=g10 AC_SUBST(VERSION) AC_SUBST(PACKAGE) @@ -24,6 +24,10 @@ fi dnl some additional macros +dnl WK_MSG_PRINT(STRING) +define(WK_MSG_PRINT, +[echo $ac_n "$1"" $ac_c" 1>&AC_FD_MSG ]) + dnl WK_CHECK_TYPEDEF(TYPE, HAVE_NAME) AC_DEFUN(WK_CHECK_TYPEDEF, [AC_MSG_CHECKING(for $1 typedef) @@ -163,7 +167,7 @@ fi dnl setup assembler stuff -AC_MSG_CHECKING(configure mpi) +AC_MSG_CHECKING(for mpi assembler functions) mpi_config_done="no" AC_CACHE_VAL(ac_cv_mpi_config_done, [ ac_cv_mpi_config_done="$mpi_config_done" ]) @@ -173,6 +177,7 @@ else ac_cv_mpi_config_done="" if test -f ./mpi/config.links ; then . ./mpi/config.links + ac_cv_mpi_extra_asm_modules="$mpi_extra_modules" AC_LINK_FILES( ${mpi_ln_src}, ${mpi_ln_dst} ) ac_cv_mpi_config_done="yes" AC_MSG_RESULT(done) @@ -181,18 +186,31 @@ else AC_MSG_ERROR([mpi/config.links missing!]) fi fi +MPI_EXTRA_ASM_OBJS="" +if test "$ac_cv_mpi_extra_asm_modules" != ""; then +WK_MSG_PRINT([mpi extra asm functions:]) +for i in $ac_cv_mpi_extra_asm_modules; do + WK_MSG_PRINT([$i]) + MPI_EXTRA_ASM_OBJS="$MPI_EXTRA_ASM_OBJS $i.o" +done +AC_MSG_RESULT() +fi +AC_SUBST(MPI_EXTRA_ASM_OBJS) -dnl checking whether we have the RSA source -dnl Add stuff to insert this into the makefile -dnl AC_SUBST(add_cipher_SOURCES) -AC_CACHE_CHECK(for rsa source, ac_cv_have_rsa_cipher, +dnl checking whether we have other cipher source files +CIPHER_EXTRA_OBJS="" +CIPHER_EXTRA_DIST="" +AC_CACHE_CHECK(for extra cipher modules, ac_cv_have_rsa_cipher, [if test -f cipher/rsa.c && test -f cipher/rsa.h; then ac_cv_have_rsa_cipher=yes; else ac_cv_have_rsa_cipher=no; fi]) if test $ac_cv_have_rsa_cipher = yes; then AC_DEFINE(HAVE_RSA_CIPHER) + CIPHER_EXTRA_OBJS="rsa.o" + CIPHER_EXTRA_DIST="rsa.c rsa.h" fi - +AC_SUBST(CIPHER_EXTRA_OBJS) +AC_SUBST(CIPHER_EXTRA_DIST) AC_OUTPUT([ Makefile \ util/Makefile \ diff --git a/mpi/Makefile.am b/mpi/Makefile.am index 0daf86042..18b5581a7 100644 --- a/mpi/Makefile.am +++ b/mpi/Makefile.am @@ -36,16 +36,6 @@ mpi_LIBADD = mpih-mul1.o \ mpih-mul3.o \ mpih-add1.o \ mpih-sub1.o \ - mpih-shift.o - -#mpi_DEPENDENCIES = mpih-mul1.S \ -# mpih-mul2.S \ -# mpih-mul3.S \ -# mpih-add1.S \ -# mpih-sub1.S \ -# mpih-shift.S -# - -##DISTCLEANFILES = @MPI_DISTCLEANFILES@ + mpih-shift.o @MPI_EXTRA_ASM_OBJS@ diff --git a/mpi/Makefile.in b/mpi/Makefile.in index c179f53f9..81910ff2b 100644 --- a/mpi/Makefile.in +++ b/mpi/Makefile.in @@ -72,7 +72,7 @@ mpi_LIBADD = mpih-mul1.o \ mpih-mul3.o \ mpih-add1.o \ mpih-sub1.o \ - mpih-shift.o + mpih-shift.o @MPI_EXTRA_ASM_OBJS@ mkinstalldirs = $(top_srcdir)/scripts/mkinstalldirs CONFIG_HEADER = ../config.h LIBRARIES = $(noinst_LIBRARIES) @@ -273,14 +273,6 @@ mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean CFLAGS += -O2 - -#mpi_DEPENDENCIES = mpih-mul1.S \ -# mpih-mul2.S \ -# mpih-mul3.S \ -# mpih-add1.S \ -# mpih-sub1.S \ -# mpih-shift.S -# .SUFFIXES: .SUFFIXES: .c .o $(SUFFIXES) diff --git a/mpi/hppa/mpih-add1.S b/mpi/hppa/mpih-add1.S index a30e80b83..21cad314e 100644 --- a/mpi/hppa/mpih-add1.S +++ b/mpi/hppa/mpih-add1.S @@ -44,8 +44,8 @@ */ .code - .export __mpihelp_add_n -__mpihelp_add_n + .export mpihelp_add_n +mpihelp_add_n .proc .callinfo frame=0,no_calls .entry