diff --git a/Makefile.am b/Makefile.am index 0e9754e1..1e0db6f4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,159 +1,159 @@ ## Process this file with automake to produce Makefile.in # Copyright (C) 1992, 1999, 2000, 2002 Free Software Foundation, Inc. # # This file is part of Libgcrypt. # # Libgcrypt is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of # the License, or (at your option) any later version. # # Libgcrypt is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, see . +# License along with this program; if not, see . # SPDX-License-Identifier: LGPL-2.1-or-later # Location of the released tarball archives. This is prefixed by # the variable RELEASE_ARCHIVE in ~/.gnupg-autogen.rc. For example: # RELEASE_ARCHIVE=wk@somehost:archive/tarballs RELEASE_ARCHIVE_SUFFIX = libgcrypt/v1.9 # The variable RELEASE_SIGNING_KEY in ~/.gnupg-autogen.rc is used # to specify the key for signing. For example: # RELEASE_SIGNKEY=D8692123C4065DEA5E0F3AB5249B39D24F25E3B6 ACLOCAL_AMFLAGS = -I m4 AM_DISTCHECK_DVI_TARGET = pdf DISTCHECK_CONFIGURE_FLAGS = --disable-random-daemon --enable-doc \ --enable-random=auto # (A suitable gitlog-to-changelog script can be found in GnuPG master.) GITLOG_TO_CHANGELOG=gitlog-to-changelog if BUILD_DOC doc = doc else doc = endif DIST_SUBDIRS = m4 compat mpi cipher random src doc tests SUBDIRS = compat mpi cipher random src $(doc) tests EXTRA_DIST = autogen.sh autogen.rc README.GIT LICENSES \ ChangeLog-2011 build-aux/ChangeLog-2011 doc/ChangeLog-2011 \ m4/ChangeLog-2011 cipher/ChangeLog-2011 src/ChangeLog-2011 \ random/ChangeLog-2011 tests/ChangeLog-2011 mpi/ChangeLog-2011 \ build-aux/git-log-footer build-aux/git-log-fix VERSION DISTCLEANFILES = # Add all the files listed in "distfiles" files to the distribution dist-hook: gen-ChangeLog @set -e; \ for file in `cd $(top_srcdir); \ find mpi -type f -name distfiles`; do \ dir=`dirname $$file` ; $(mkinstalldirs) $(distdir)/$$dir ; \ for i in distfiles `cat $(top_srcdir)/$$file` ; do \ ln $(top_srcdir)/$$dir/$$i $(distdir)/$$dir/$$i 2> /dev/null \ || cp -p $(top_srcdir)/$$dir/$$i $(distdir)/$$dir/$$i; \ done ; \ done distcheck-hook: set -e; ( \ pref="#+macro: $$(echo $(PACKAGE_NAME)|tr '-' '_')_" ;\ reldate="$$(date -u +%Y-%m-%d)" ;\ echo "$${pref}ver $(PACKAGE_VERSION)" ;\ echo "$${pref}date $${reldate}" ;\ list='$(DIST_ARCHIVES)'; for i in $$list; do \ case "$$i" in *.tar.bz2) \ echo "$${pref}size $$(wc -c <$$i|awk '{print int($$1/1024)}')k" ;\ echo "$${pref}sha1 $$(sha1sum <$$i|cut -d' ' -f1)" ;\ echo "$${pref}sha2 $$(sha256sum <$$i|cut -d' ' -f1)" ;;\ esac;\ done ) | tee $(distdir).swdb gen_start_date = 2011-12-01T14:00:00 .PHONY: gen-ChangeLog gen-ChangeLog: if test -e $(top_srcdir)/.git; then \ (cd $(top_srcdir) && \ $(GITLOG_TO_CHANGELOG) --append-dot --tear-off \ --amend=build-aux/git-log-fix \ --since=$(gen_start_date) ) > $(distdir)/cl-t; \ cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\ rm -f $(distdir)/ChangeLog; \ mv $(distdir)/cl-t $(distdir)/ChangeLog; \ fi stowinstall: $(MAKE) $(AM_MAKEFLAGS) install prefix=/usr/local/stow/libgcrypt # Macro to help the release target. RELEASE_NAME = $(PACKAGE_TARNAME)-$(PACKAGE_VERSION) release: +(set -e;\ if [ "$(abs_top_builddir)" = "$(abs_top_srcdir)" ]; then \ echo "error: build directory must not be the source directory" >&2;\ exit 2;\ fi ;\ echo "/* Build started at $$(date -uIseconds) */" ;\ cd $(top_srcdir); \ ./autogen.sh --force; \ cd $(abs_top_builddir); \ rm -rf dist; mkdir dist ; cd dist ; \ $(abs_top_srcdir)/configure --enable-maintainer-mode; \ $(MAKE) distcheck; \ echo "/* Build finished at $$(date -uIseconds) */" ;\ echo "/*" ;\ echo " * Please run the final step interactivly:" ;\ echo " * make sign-release" ;\ echo " */" ;\ ) 2>&1 | tee "$(RELEASE_NAME).buildlog" sign-release: +(set -e; \ test $$(pwd | sed 's,.*/,,') = dist || cd dist; \ x=$$(grep '^RELEASE_ARCHIVE=' $$HOME/.gnupg-autogen.rc|cut -d= -f2);\ if [ -z "$$x" ]; then \ echo "error: RELEASE_ARCHIVE missing in ~/.gnupg-autogen.rc">&2; \ exit 2;\ fi;\ myarchive="$$x/$(RELEASE_ARCHIVE_SUFFIX)";\ x=$$(grep '^RELEASE_SIGNKEY=' $$HOME/.gnupg-autogen.rc|cut -d= -f2);\ if [ -z "$$x" ]; then \ echo "error: RELEASE_SIGNKEY missing in ~/.gnupg-autogen.rc">&2; \ exit 2;\ fi;\ mysignkey="$$x";\ files1="$(RELEASE_NAME).tar.bz2 \ $(RELEASE_NAME).tar.gz" ; \ files2="$(RELEASE_NAME).tar.bz2.sig \ $(RELEASE_NAME).tar.gz.sig \ $(RELEASE_NAME).swdb \ $(RELEASE_NAME).buildlog" ;\ echo "/* Signing the source tarball ..." ;\ gpg -sbu $$mysignkey $(RELEASE_NAME).tar.bz2 ;\ gpg -sbu $$mysignkey $(RELEASE_NAME).tar.gz ;\ cat $(RELEASE_NAME).swdb >swdb.snippet;\ echo >>swdb.snippet ;\ sha1sum $${files1} >>swdb.snippet ;\ cat "../$(RELEASE_NAME).buildlog" swdb.snippet \ | gzip >$(RELEASE_NAME).buildlog ;\ echo "Copying to archive $$myarchive ..." ;\ scp -p $${files1} $${files2} $${myarchive}/ || true;\ echo '/*' ;\ echo ' * All done; for checksums see dist/swdb.snippet' ;\ echo ' */' ;\ ) diff --git a/acinclude.m4 b/acinclude.m4 index 5f4b859b..ba1b385a 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1,244 +1,244 @@ dnl macros to configure Libgcrypt dnl Copyright (C) 1998, 1999, 2000, 2001, 2002, dnl 2003 Free Software Foundation, Inc. dnl Copyright (C) 2013 g10 Code GmbH dnl dnl This file is part of Libgcrypt. dnl dnl Libgcrypt is free software; you can redistribute it and/or modify dnl it under the terms of the GNU Lesser General Public License as dnl published by the Free Software Foundation; either version 2.1 of dnl the License, or (at your option) any later version. dnl dnl Libgcrypt is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU Lesser General Public License for more details. dnl dnl You should have received a copy of the GNU Lesser General Public -dnl License along with this program; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +dnl License along with this program; if not, see . +dnl SPDX-License-Identifier: LGPL-2.1-or-later dnl GCRY_MSG_SHOW(PREFIX,STRING) dnl Print a message with a prefix. dnl define([GCRY_MSG_SHOW], [ echo " $1 $2" 1>&AS_MESSAGE_FD([]) ]) dnl GCRY_MSG_WRAP(PREFIX, ALGOLIST) dnl Print a nicely formatted list of algorithms dnl with an appropriate line wrap. dnl define([GCRY_MSG_WRAP], [ tmp=" $1" tmpi="abc" if test "${#tmpi}" -ne 3 >/dev/null 2>&1 ; then dnl Without a POSIX shell, we don't botter to wrap it echo "$tmp $2" 1>&AS_MESSAGE_FD([]) else tmpi=`echo "$tmp"| sed 's/./ /g'` echo $2 EOF | tr ' ' '\n' | \ while read word; do if test "${#tmp}" -gt 70 ; then echo "$tmp" 1>&AS_MESSAGE_FD([]) tmp="$tmpi" fi if test "$word" = "EOF" ; then echo "$tmp" 1>&AS_MESSAGE_FD([]) else tmp="$tmp $word" fi done fi ]) # # GNUPG_SYS_SYMBOL_UNDERSCORE # Does the compiler prefix global symbols with an underscore? # # Taken from GnuPG 1.2 and modified to use the libtool macros. AC_DEFUN([GNUPG_SYS_SYMBOL_UNDERSCORE], [tmp_do_check="no" case "${host}" in i?86-mingw32* | i?86-*-mingw32*) ac_cv_sys_symbol_underscore=yes ;; x86_64-*-mingw32*) ac_cv_sys_symbol_underscore=no ;; i386-emx-os2 | i[3456]86-pc-os2*emx | i386-pc-msdosdjgpp) ac_cv_sys_symbol_underscore=yes ;; *) if test "$cross_compiling" != yes; then tmp_do_check="yes" fi ;; esac if test "$tmp_do_check" = "yes"; then AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE]) AC_MSG_CHECKING([for _ prefix in compiled symbols]) AC_CACHE_VAL(ac_cv_sys_symbol_underscore, [ac_cv_sys_symbol_underscore=no cat > conftest.$ac_ext < $ac_nlist) && test -s "$ac_nlist"; then # See whether the symbols have a leading underscore. if egrep '^_nm_test_func' "$ac_nlist" >/dev/null; then ac_cv_sys_symbol_underscore=yes else if egrep '^nm_test_func ' "$ac_nlist" >/dev/null; then : else echo "configure: cannot find nm_test_func in $ac_nlist" >&AS_MESSAGE_LOG_FD fi fi else echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD fi else echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD cat conftest.c >&AS_MESSAGE_LOG_FD fi rm -rf conftest* ]) else AC_MSG_CHECKING([for _ prefix in compiled symbols]) fi AC_MSG_RESULT($ac_cv_sys_symbol_underscore) if test x$ac_cv_sys_symbol_underscore = xyes; then AC_DEFINE(WITH_SYMBOL_UNDERSCORE,1, [Defined if compiled symbols have a leading underscore]) fi ]) ###################################################################### # Check whether mlock is broken (hpux 10.20 raises a SIGBUS if mlock # is not called from uid 0 (not tested whether uid 0 works) # For DECs Tru64 we have also to check whether mlock is in librt # mlock is there a macro using memlk() ###################################################################### dnl GNUPG_CHECK_MLOCK dnl define(GNUPG_CHECK_MLOCK, [ AC_CHECK_FUNCS(mlock) if test "$ac_cv_func_mlock" = "no"; then AC_CHECK_HEADERS(sys/mman.h) if test "$ac_cv_header_sys_mman_h" = "yes"; then # Add librt to LIBS: AC_CHECK_LIB(rt, memlk) AC_CACHE_CHECK([whether mlock is in sys/mman.h], gnupg_cv_mlock_is_in_sys_mman, [AC_LINK_IFELSE( [AC_LANG_PROGRAM([[ #include #ifdef HAVE_SYS_MMAN_H #include #endif ]], [[ int i; /* glibc defines this for functions which it implements * to always fail with ENOSYS. Some functions are actually * named something starting with __ and the normal name * is an alias. */ #if defined (__stub_mlock) || defined (__stub___mlock) choke me #else mlock(&i, 4); #endif ; return 0; ]])], gnupg_cv_mlock_is_in_sys_mman=yes, gnupg_cv_mlock_is_in_sys_mman=no)]) if test "$gnupg_cv_mlock_is_in_sys_mman" = "yes"; then AC_DEFINE(HAVE_MLOCK,1, [Defined if the system supports an mlock() call]) fi fi fi if test "$ac_cv_func_mlock" = "yes"; then AC_CHECK_FUNCS(sysconf getpagesize) AC_MSG_CHECKING(whether mlock is broken) AC_CACHE_VAL(gnupg_cv_have_broken_mlock, AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include #include #include #include #include #include int main() { char *pool; int err; long int pgsize; #if defined(HAVE_SYSCONF) && defined(_SC_PAGESIZE) pgsize = sysconf (_SC_PAGESIZE); #elif defined (HAVE_GETPAGESIZE) pgsize = getpagesize(); #else pgsize = -1; #endif if (pgsize == -1) pgsize = 4096; pool = malloc( 4096 + pgsize ); if( !pool ) return 2; pool += (pgsize - ((size_t)pool % pgsize)); err = mlock( pool, 4096 ); if( !err || errno == EPERM || errno == EAGAIN) return 0; /* okay */ return 1; /* hmmm */ } ]])], gnupg_cv_have_broken_mlock="no", gnupg_cv_have_broken_mlock="yes", gnupg_cv_have_broken_mlock="assume-no" ) ) if test "$gnupg_cv_have_broken_mlock" = "yes"; then AC_DEFINE(HAVE_BROKEN_MLOCK,1, [Defined if the mlock() call does not work]) AC_MSG_RESULT(yes) else if test "$gnupg_cv_have_broken_mlock" = "no"; then AC_MSG_RESULT(no) else AC_MSG_RESULT(assuming no) fi fi fi ]) dnl LIST_MEMBER() dnl Check whether an element ist contained in a list. Set `found' to dnl `1' if the element is found in the list, to `0' otherwise. AC_DEFUN([LIST_MEMBER], [ name=$1 list=$2 found=0 for n in $list; do if test "x$name" = "x$n"; then found=1 fi done ]) diff --git a/doc/Makefile.am b/doc/Makefile.am index ca3061bc..36a72572 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,104 +1,104 @@ ## Process this file with automake to create Makefile.in # Copyright (C) 2002 Free Software Foundation, Inc. # # This file is part of Libgcrypt. # # Libgcrypt is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of # the License, or (at your option) any later version. # # Libgcrypt is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# License along with this program; if not, see . +# SPDX-License-Identifier: LGPL-2.1-or-later EXTRA_DIST = README.apichanges HACKING DCO \ libgcrypt-modules.png fips-fsm.png \ libgcrypt-modules.pdf fips-fsm.pdf \ yat2m.c DISTCLEANFILES = gcrypt.cps yat2m-stamp.tmp yat2m-stamp $(myman_pages) CLEANFILES = yat2m$(EXEEXT_FOR_BUILD) BUILT_SOURCES = libgcrypt-modules.png fips-fsm.png \ libgcrypt-modules.pdf fips-fsm.pdf info_TEXINFOS = gcrypt.texi gcrypt_TEXINFOS = lgpl.texi gpl.texi libgcrypt-modules.fig fips-fsm.fig YAT2M_OPTIONS = -I $(srcdir) \ --release "Libgcrypt @PACKAGE_VERSION@" --source "Libgcrypt" myman_sources = gcrypt.texi myman_pages = hmac256.1 man_MANS = $(myman_pages) yat2m$(EXEEXT_FOR_BUILD): yat2m.c $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ $(CPPFLAGS_FOR_BUILD) -o $@ $(srcdir)/yat2m.c .fig.png: fig2dev -L png `test -f '$<' || echo '$(srcdir)/'`$< $@ .fig.jpg: fig2dev -L jpg `test -f '$<' || echo '$(srcdir)/'`$< $@ .fig.eps: fig2dev -L eps `test -f '$<' || echo '$(srcdir)/'`$< $@ .fig.pdf: fig2dev -L pdf `test -f '$<' || echo '$(srcdir)/'`$< $@ yat2m-stamp: $(myman_sources) @rm -f yat2m-stamp.tmp @touch yat2m-stamp.tmp for file in $(myman_sources) ; do \ ./yat2m$(EXEEXT_FOR_BUILD) $(YAT2M_OPTIONS) --store \ `test -f '$$file' || echo '$(srcdir)/'`$$file ; done @mv -f yat2m-stamp.tmp $@ yat2m-stamp: yat2m$(EXEEXT_FOR_BUILD) $(myman_pages) : yat2m-stamp @if test -f $@; then :; else \ trap 'rm -rf yat2m-stamp yat2m-lock' 1 2 13 15; \ if mkdir yat2m-lock 2>/dev/null; then \ rm -f yat2m-stamp; \ $(MAKE) $(AM_MAKEFLAGS) yat2m-stamp; \ rmdir yat2m-lock; \ else \ while test -d yat2m-lock; do sleep 1; done; \ test -f yat2m-stamp; exit $$?; \ fi; \ fi # Make sure that gcrypt.texi is touched if any other source file has # been modified. This is required so that the version.texi magic # updates the release date. gcrypt.texi : $(gcrypt_TEXINFOS) touch $(srcdir)/gcrypt.texi online: gcrypt.html gcrypt.pdf gcrypt.info set -e; \ echo "Uploading current manuals to www.gnupg.org ..."; \ cp libgcrypt-modules.png gcrypt.html/; \ cp fips-fsm.png gcrypt.html/; \ user=werner ; dashdevel="" ; \ if echo "@PACKAGE_VERSION@" | grep -- "-svn" >/dev/null; then \ dashdevel="-devel" ; \ cp gcrypt.pdf gcrypt.html/; \ cp gcrypt.info gcrypt.html/; \ else \ rsync -v gcrypt.pdf gcrypt.info \ $${user}@trithemius.gnupg.org:webspace/manuals/ ; \ fi ; \ cd gcrypt.html ; \ rsync -vr --exclude='.svn' . \ $${user}@trithemius.gnupg.org:webspace/manuals/gcrypt$${dashdevel}/ diff --git a/m4/noexecstack.m4 b/m4/noexecstack.m4 index 85df0439..f3e7539e 100644 --- a/m4/noexecstack.m4 +++ b/m4/noexecstack.m4 @@ -1,55 +1,55 @@ # noexecstack.m4 dnl Copyright (C) 1995-2006 Free Software Foundation, Inc. dnl dnl This library is free software; you can redistribute it and/or dnl modify it under the terms of the GNU Lesser General Public dnl License as published by the Free Software Foundation; either dnl version 2.1 of the License, or (at your option) any later version. dnl dnl This library is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU dnl Lesser General Public License for more details. dnl dnl You should have received a copy of the GNU Lesser General Public -dnl License along with this library; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +dnl License along with this library; if not, see . +dnl SPDX-License-Identifier: LGPL-2.1-or-later dnl Checks whether the stack can be marked nonexecutable by passing an dnl option to the C-compiler when acting on .s files. Returns that dnl option in NOEXECSTACK_FLAGS. dnl This macro is adapted from one found in GLIBC-2.3.5. AC_DEFUN([CL_AS_NOEXECSTACK],[ AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AM_PROG_AS]) AC_MSG_CHECKING([whether non excutable stack support is requested]) AC_ARG_ENABLE(noexecstack, AS_HELP_STRING([--disable-noexecstack], [disable non executable stack support]), noexecstack_support=$enableval, noexecstack_support=yes) AC_MSG_RESULT($noexecstack_support) AC_CACHE_CHECK([whether assembler supports --noexecstack option], cl_cv_as_noexecstack, [dnl cat > conftest.c </dev/null]) \ && grep .note.GNU-stack conftest.s >/dev/null \ && AC_TRY_COMMAND([${CCAS} $CCASFLAGS $CPPFLAGS -Wa,--noexecstack -c -o conftest.o conftest.s >/dev/null]) then cl_cv_as_noexecstack=yes else cl_cv_as_noexecstack=no fi rm -f conftest*]) if test "$noexecstack_support" = yes -a "$cl_cv_as_noexecstack" = yes; then NOEXECSTACK_FLAGS="-Wa,--noexecstack" else NOEXECSTACK_FLAGS= fi AC_SUBST(NOEXECSTACK_FLAGS) ]) diff --git a/mpi/Makefile.am b/mpi/Makefile.am index e1362c88..d06be7aa 100644 --- a/mpi/Makefile.am +++ b/mpi/Makefile.am @@ -1,180 +1,180 @@ ## Process this file with automake to produce Makefile.in # Copyright (C) 1992, 1999, 2000, 2002 Free Software Foundation, Inc. # # This file is part of Libgcrypt. # # Libgcrypt is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of # the License, or (at your option) any later version. # # Libgcrypt is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# License along with this program; if not, see . +# SPDX-License-Identifier: LGPL-2.1-or-later # 1.5 leads to a combinatorial explosion due to all the conditionals # I was not able to build it with 64Megs - 1.6 fixes this. # not anymore required: AUTOMAKE_OPTIONS = 1.6 # Need to include ../src in addition to top_srcdir because gcrypt.h is # a built header. AM_CPPFLAGS = -I../src -I$(top_srcdir)/src AM_CFLAGS = $(GPG_ERROR_CFLAGS) AM_ASFLAGS = $(MPI_SFLAGS) AM_CCASFLAGS = $(NOEXECSTACK_FLAGS) EXTRA_DIST = config.links DISTCLEANFILES = mpi-asm-defs.h \ mpih-add1-asm.S mpih-mul1-asm.S mpih-mul2-asm.S mpih-mul3-asm.S \ mpih-lshift-asm.S mpih-rshift-asm.S mpih-sub1-asm.S asm-syntax.h \ mpih-add1.c mpih-mul1.c mpih-mul2.c mpih-mul3.c \ mpih-lshift.c mpih-rshift.c mpih-sub1.c \ sysdep.h mod-source-info.h # Beware: The following list is not a comment but grepped by # config.links to get the list of symlinked modules # Optional modules are marked with an O in the second column. #BEGIN_ASM_LIST # mpih-add1 C # mpih-sub1 C # mpih-mul1 C # mpih-mul2 C # mpih-mul3 C # mpih-lshift C # mpih-rshift C # udiv O # udiv-qrnnd O #END_ASM_LIST # Note: This function has not yet been implemented. There is only a dummy in # generic/ # udiv-w-sdiv O # And we need to have conditionals for all modules because # we don't know whether they are .c or .S. Very ugly; I know. # Remember to define them all in configure.ac if MPI_MOD_ASM_MPIH_ADD1 mpih_add1 = mpih-add1-asm.S else if MPI_MOD_C_MPIH_ADD1 mpih_add1 = mpih-add1.c else mpih_add1 = endif endif if MPI_MOD_ASM_MPIH_SUB1 mpih_sub1 = mpih-sub1-asm.S else if MPI_MOD_C_MPIH_SUB1 mpih_sub1 = mpih-sub1.c else mpih_sub1 = endif endif if MPI_MOD_ASM_MPIH_MUL1 mpih_mul1 = mpih-mul1-asm.S else if MPI_MOD_C_MPIH_MUL1 mpih_mul1 = mpih-mul1.c else mpih_mul1 = endif endif if MPI_MOD_ASM_MPIH_MUL2 mpih_mul2 = mpih-mul2-asm.S else if MPI_MOD_C_MPIH_MUL2 mpih_mul2 = mpih-mul2.c else mpih_mul2 = endif endif if MPI_MOD_ASM_MPIH_MUL3 mpih_mul3 = mpih-mul3-asm.S else if MPI_MOD_C_MPIH_MUL3 mpih_mul3 = mpih-mul3.c else mpih_mul3 = endif endif if MPI_MOD_ASM_MPIH_LSHIFT mpih_lshift = mpih-lshift-asm.S else if MPI_MOD_C_MPIH_LSHIFT mpih_lshift = mpih-lshift.c else mpih_lshift = endif endif if MPI_MOD_ASM_MPIH_RSHIFT mpih_rshift = mpih-rshift-asm.S else if MPI_MOD_C_MPIH_RSHIFT mpih_rshift = mpih-rshift.c else mpih_rshift = endif endif if MPI_MOD_ASM_UDIV udiv = udiv-asm.S else if MPI_MOD_C_UDIV udiv = udiv.c else udiv = endif endif if MPI_MOD_ASM_UDIV_QRNND udiv_qrnnd = udiv-qrnnd-asm.S else if MPI_MOD_C_UDIV_QRNND udiv_qrnnd = udiv-qrnnd.c else udiv_qrnnd = endif endif noinst_LTLIBRARIES = libmpi.la libmpi_la_LDFLAGS = nodist_libmpi_la_SOURCES = $(mpih_add1) $(mpih_sub1) $(mpih_mul1) \ $(mpih_mul2) $(mpih_mul3) $(mpih_lshift) $(mpih_rshift) \ $(udiv) $(udiv_qrnnd) libmpi_la_SOURCES = longlong.h \ mpi-add.c \ mpi-bit.c \ mpi-cmp.c \ mpi-div.c \ mpi-gcd.c \ mpi-internal.h \ mpi-inline.h \ mpi-inline.c \ mpi-inv.c \ mpi-mul.c \ mpi-mod.c \ mpi-pow.c \ mpi-mpow.c \ mpi-scan.c \ mpicoder.c \ mpih-div.c \ mpih-mul.c \ mpih-const-time.c \ mpiutil.c \ ec.c ec-internal.h ec-ed25519.c ec-nist.c ec-inline.h \ ec-hw-s390x.c EXTRA_libmpi_la_SOURCES = asm-common-aarch64.h asm-common-amd64.h diff --git a/tests/Makefile.am b/tests/Makefile.am index 75aa5cf7..348f8373 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -1,130 +1,130 @@ # Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is part of Libgcrypt. # # Libgcrypt is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as # published by the Free Software Foundation; either version 2.1 of # the License, or (at your option) any later version. # # Libgcrypt is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public -# License along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +# License along with this program; if not, see . +# SPDX-License-Identifier: LGPL-2.1-or-later ## Process this file with automake to produce Makefile.in # Note: Please keep these tests in sync with those in testdrv.c. # We will eventually switch over to the the new driver but as of now # the driver is only used for cross-compiling. tests_bin = \ version t-secmem mpitests t-sexp t-convert \ t-mpi-bit t-mpi-point t-lock \ prime basic keygen pubkey hmac hashtest t-kdf keygrip \ aeswrap random if USE_RSA tests_bin += pkcs1v2 t-rsa-pss t-rsa-15 t-rsa-testparm endif if USE_DSA tests_bin += fips186-dsa dsa-rfc6979 t-dsa endif if USE_ECC tests_bin += curves t-ecdsa t-ed25519 t-cv25519 t-x448 t-ed448 endif tests_bin_last = benchmark bench-slope tests_sh = basic-disable-all-hwf tests_sh_last = hashtest-6g hashtest-256g TESTS = $(tests_bin) $(tests_sh) $(tests_bin_last) $(tests_sh_last) # Force sequential run of some tests. bench-slope.log: benchmark.log hashtest-6g.log: bench-slope.log hashtest-256g.log: hashtest-6g.log TESTS_ENVIRONMENT = GCRYPT_IN_REGRESSION_TEST=1 # Need to include ../src in addition to top_srcdir because gcrypt.h is # a built header. AM_CPPFLAGS = -I../src -I$(top_srcdir)/src AM_CFLAGS = $(GPG_ERROR_CFLAGS) AM_LDFLAGS = -no-install standard_ldadd = \ ../src/libgcrypt.la \ ../compat/libcompat.la EXTRA_PROGRAMS = testapi pkbench noinst_PROGRAMS = testdrv $(tests_bin) $(tests_bin_last) \ fipsdrv rsacvt genhashdata gchash noinst_HEADERS = t-common.h CLEANFILES = testdrv-build EXTRA_DIST = README rsa-16k.key \ pkcs1v2-oaep.h pkcs1v2-pss.h pkcs1v2-v15c.h pkcs1v2-v15s.h \ t-ed25519.inp t-ed448.inp t-dsa.inp t-ecdsa.inp t-rsa-15.inp \ t-rsa-pss.inp stopwatch.h hashtest-6g.in hashtest-256g.in \ sha3-224.h sha3-256.h sha3-384.h sha3-512.h blake2b.h blake2s.h \ basic-disable-all-hwf.in basic_all_hwfeature_combinations.sh LDADD = $(standard_ldadd) $(GPG_ERROR_LIBS) @LDADD_FOR_TESTS_KLUDGE@ pkbench_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ prime_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ t_mpi_bit_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ t_secmem_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ testapi_LDADD = $(standard_ldadd) @LDADD_FOR_TESTS_KLUDGE@ t_lock_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS) @LDADD_FOR_TESTS_KLUDGE@ t_lock_CFLAGS = $(GPG_ERROR_MT_CFLAGS) testdrv_LDADD = $(LDADD_FOR_TESTS_KLUDGE) # Build a version of the test driver for the build platform. testdrv-build: testdrv.c $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) \ $(CPPFLAGS_FOR_BUILD) -DTESTDRV_EXEEXT=\"$(EXEEXT)\" \ -o $@ $(srcdir)/testdrv.c if HAVE_W32_SYSTEM xtestsuite_libs = ../src/.libs/libgcrypt-20.dll \ $(prefix)/bin/libgpg-error*-0.dll xtestsuite_driver = .libs/testdrv.exe t_kdf_LDADD = $(standard_ldadd) $(GPG_ERROR_LIBS) @LDADD_FOR_TESTS_KLUDGE@ t_kdf_CFLAGS = $(GPG_ERROR_CFLAGS) else xtestsuite_libs = ../src/.libs/libgcrypt.so* xtestsuite_driver = testdrv t_kdf_LDADD = $(standard_ldadd) $(GPG_ERROR_MT_LIBS) @LDADD_FOR_TESTS_KLUDGE@ t_kdf_CFLAGS = $(GPG_ERROR_MT_CFLAGS) endif # xcheck uses our new testdrv instead of the automake test runner. .PHONY: xcheck xtestsuite xcheck: testdrv$(EXEEXT) srcdir=$(srcdir) ./testdrv$(EXEEXT) --verbose # Make a tarballs with all the tests. xtestsuite: testdrv$(EXEEXT) testdrv-build $(TESTS) +(set -e; \ name="$(PACKAGE_TARNAME)-tests-$(PACKAGE_VERSION)";\ xname="$$name/$(host)" ;\ rm -rf $$name; mkdir $$name ; mkdir $$xname ;\ cp -L $(xtestsuite_driver) \ $$(srcdir=$(srcdir) ./testdrv-build --files|sort|uniq) $$xname/ ;\ cp -P $(xtestsuite_libs) $$xname/ ;\ touch $$xname/libgcrypt-standalone-tests ;\ $(AMTAR) czf "$(PACKAGE_TARNAME)-tests-$(PACKAGE_VERSION)".tar.gz \ $$name ;\ )