Jeffrey Walton
6138829572
Add CHAM128 SSSE3 implementation (PR #670 )
...
CHAM-128(128) from 10.5 cpb to 4.1 cpb. CHAM-128(256) from 12.5 cpb to 4.7 cpb.
2018-06-19 18:03:28 -04:00
Jeffrey Walton
a07a0e5e5f
Add recipe to install the library only (GH #653 )
...
Some distros don't want to install cryptest.exe. For folks who don't want to install the test program, they can issue 'make install-lib'.
install-lib is a non-standard target, but the GNU Coding Standard does not have a standard target for the task.
2018-05-06 00:10:38 -04:00
Jeffrey Walton
4bb331f5d0
Post-release version increment
2018-04-08 15:58:25 -04:00
Jeffrey Walton
c8d8caf700
Prepare for Crypto++ 7.0 release
2018-04-08 04:48:59 -04:00
Nicolas Chauvet (kwizart)
b6fec08da1
Freeze ABI compatibility with LIB_MAJOR ( #589 )
...
This is a convention that binary compatibity uses one number.
Using that, it's possible to have bugfixes releases (patchlevel
incremented) and enhancement release (minor incremented with no
public interface removed).
Here is more information about convention
https://autotools.io/libtool/version.html
(libtool isn't relevant to this project, but the explanation hold)
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
2018-02-20 10:05:52 -05:00
Jeffrey Walton
e416b243d3
Re-add Simon and Speck, enable SSE (GH #585 )
...
This commit re-adds Simon and Speck. The commit includes C++, SSSE3 and SSE4. NEON, Aarch32 and Aarch64 are disabled at the moment.
2018-02-18 23:23:50 -05:00
Jeffrey Walton
15b14cc618
Remove Simon and Speck ciphers (GH #585 )
...
We recently learned our Simon and Speck implementation was wrong. The removal will stop harm until we can loop back and fix the issue.
The issue is, the paper, the test vectors and the ref-impl do not align. Each produces slightly different result. We followed the test vectors but they turned out to be wrong for the ciphers.
We have one kernel test vector but we don't have a working implementation to observe it to fix our implementation. Ugh...
2018-02-14 04:06:16 -05:00
Jeffrey Walton
d5161923cb
Use INSTALL_PROGRAM for shared objects (GH #582 )
2018-02-05 09:03:21 -05:00
Jeffrey Walton
0a43341cec
Use install program for Makefile (GH #582 )
2018-02-05 08:54:13 -05:00
Jeffrey Walton
96bc82fe12
Avoid a compiler warning in Makefile tests
2018-01-28 20:23:48 -05:00
Jeffrey Walton
51ce834cc4
Fix ARM detection (GH #573 )
2018-01-28 13:33:03 -05:00
Jeffrey Walton
69d5400b3f
Fix MinGW misdetection (GH #573 )
...
This commit does a few things. First, it uses the compiler's triplet and the build component to determine the machine we are targeting. Second, it adds an 'X' prefix so we don't collide with someone else's variables. Third it cleans up some of the recipes. Fourth, it removes X32 detection since the system differences are handled in config.h and the source files
2018-01-27 13:05:23 -05:00
Jeffrey Walton
c16eddb40e
Use /bin/sh (GH #573 )
2018-01-25 18:39:24 -05:00
XU Cheng
0bec012333
Fix building for Linuxbrew ( #575 )
...
Linuxbrew is a fork of Homebrew on Linux.
In which, the `gcc --version` will report "homebrew".
Therefore, the current code will incorrectly set OSXPORT_COMPILER
under such environment, which results to the following compiling errors:
gcm.cpp:823: Error: too many memory references for `add'
gcm.cpp:824: Error: too many memory references for `pxor'
gcm.cpp:825: Error: ambiguous operand size for `shr'
gcm.cpp:826: Error: too many memory references for `movzx'
gcm.cpp:827: Error: too many memory references for `add'
gcm.cpp:828: Error: too many memory references for `pxor'
gcm.cpp:829: Error: too many memory references for `movzx'
gcm.cpp:830: Error: too many memory references for `add'
gcm.cpp:831: Error: too many memory references for `pxor'
gcm.cpp:832: Error: ambiguous operand size for `add'
gcm.cpp:833: Error: ambiguous operand size for `sub'
gcm.cpp:835: Error: too many memory references for `movdqa'
g++-5 -DNDEBUG -g2 -O3 -fPIC -Wa,-q -DCRYPTOPP_CLANG_INTEGRATED_ASSEMBLER=1 -pthread -pipe -c md4.cpp
make: *** [GNUmakefile:1120: gcm.o] Error 1
make: *** Waiting for unfinished jobs....
Fix this problem by checking IS_DARWIN before setting OSXPORT_COMPILER.
2018-01-25 09:17:54 -05:00
Jeffrey Walton
13ea8f374f
Add interface to TweetNaCl library ( #566 )
...
TweetNaCl is a compact reimplementation of the NaCl library by Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen, Tanja Lange, Peter Schwabe and Sjaak Smetsers. The library is less than 20 KB in size and provides 25 of the NaCl library functions.
The compact library uses curve25519, XSalsa20, Poly1305 and SHA-512 as default primitives, and includes both x25519 key exchange and ed25519 signatures. The complete list of functions can be found in TweetNaCl: A crypto library in 100 tweets (20140917), Table 1, page 5.
Crypto++ retained the function names and signatures but switched to data types provided by <stdint.h> to promote interoperability with Crypto++ and avoid size problems on platforms like Cygwin. For example, NaCl typdef'd u64 as an unsigned long long, but Cygwin, MinGW and MSYS are LP64 systems (not LLP64 systems). In addition, Crypto++ was missing NaCl's signed 64-bit integer i64.
Crypto++ enforces the 0-key restriction due to small points. The TweetNaCl library allowed the 0-keys to small points. Also see RFC 7748, Elliptic Curves for Security, Section 6.
TweetNaCl is well written but not well optimized. It runs 2x to 3x slower than optimized routines from libsodium. However, the library is still 2x to 4x faster than the algorithms NaCl was designed to replace.
The Crypto++ wrapper for TweetNaCl requires OS features. That is, NO_OS_DEPENDENCE cannot be defined. It is due to TweetNaCl's internal function randombytes. Crypto++ used DefaultAutoSeededRNG within randombytes, so OS integration must be enabled. You can use another generator like RDRAND to avoid the restriction.
2018-01-17 22:02:09 -05:00
Jeffrey Walton
fb0ecfde62
Clear clang-tidy warnings
...
This commit also tweaks the way Integer parses byte arrays. The modified routines are slightly faster. On a Core-i5 6400 the self tests are 0.1 to 0.2 seconds faster
2018-01-02 04:17:22 -05:00
Jeffrey Walton
1a7f19cdde
Use 'command -v' to test for ld.gold
2018-01-02 01:13:59 -05:00
Jeffrey Walton
651563e6c2
Temporary fix for IBM XLC failed SM3 self tests (GH #553 )
2017-12-30 22:18:08 -05:00
Jeffrey Walton
8b7f21b07d
Update makefiles to use one call to $(CXX) -dumpmachine
2017-12-30 18:38:40 -05:00
Jeffrey Walton
cd35346f70
Fix Solaris failed compile due to SHA with GCC (GH #551 )
2017-12-28 19:14:20 -05:00
zorun
c3a85caf52
Build fixes ( #547 )
...
* GNUmakefile-cross: Fix install target
The install target was not working: missing mkdir before copying files,
wrong dynamic library copied, missing ldconf.
The fix is mostly taken from the install target from GNUmakefile.
* Makefile: call 'ln -sf' instead of 'ln -sf -sf'
2017-12-16 09:07:23 -05:00
Jeffrey Walton
b7e636ac51
Rename ppc-crypto.h to ppc-simd.h
2017-12-12 07:15:59 -05:00
Jeffrey Walton
074c889210
Add NEON flags to rijndael-simd.cpp
...
AES does not have a NEON implementation. However, because it includes "adv-simd.h", it needs the compiler options so NEON types are available. Otherwise the compile fails.
We can't guard "adv-simd.h" and NEON on just AES because Simon and Speck use the templates in their NEON implementations.
2017-12-10 12:11:53 -05:00
Jeffrey Walton
25709d2597
Fix SPECK64 vector permutes
...
Thanks to Peter Cordes for the suggestion on handling the case
2017-12-04 09:47:26 -05:00
Jeffrey Walton
18ccd89965
Add SSE4 flags to makefile for Simon and Speck
2017-12-03 06:02:24 -05:00
Jeffrey Walton
f86c6124a8
Add Valgrind suppression file (GH #543 )
2017-11-29 06:52:43 -05:00
Jeffrey Walton
33caa1e13f
Add Valgrind --track-origins=yes to recipe
2017-11-29 05:26:21 -05:00
Jeffrey Walton
568e608ea6
Add NEON and ASIMD intrinsics for SPECK-128 (GH #539 )
...
Performance increased by about 200% on a 980 MHz BananaPi dev-board. Throughput went from about 176.6 cpb to about 60.3 cpb.
2017-11-27 00:36:45 -05:00
Jeffrey Walton
c5303b9c2a
Fix "variable tracking size limit exceeded" with UBsan
...
threefish.cpp: In member function ‘virtual void CryptoPP::Threefish512::Enc::ProcessAndXorBlock(const byte*, const byte*, CryptoPP::byte*) const’:
threefish.cpp:316:6: note: variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without
void Threefish512::Enc::ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const
...
2017-11-26 05:27:03 -05:00
Jeffrey Walton
f4975461a9
Remove IS_ARM64 from makefile
...
ARM64 is kind of useless. We need A-32 (old ARM), Aarch32 (new 32-bit ARM) and Aarch64 (new 64-bit ARM). Aarch32 and Aarch64 is captured by IS_ARMV8, and A-32 is captured by IS_ARM
2017-11-23 03:42:26 -05:00
Jeffrey Walton
304809a65d
Add NEON and ASIMD intrinsics for SPECK-128 (GH #538 )
...
Performance increased by about 115% on a 980 MHz BananaPi dev-board. Throughput went from about 46.2 cpb to about 21.5 cpb.
2017-11-23 02:47:44 -05:00
Jeffrey Walton
78ec2aa5f4
Fix NEON detection on arm-hf
2017-11-22 23:15:20 -05:00
Jeffrey Walton
39697d92bf
Add SSSE3 intrinsics for SPECK-128 (GH #538 )
...
Performance increased by about 100% on a 3.1 GHz Core i5 Skylake. Throughput went from about 7.3 cpb to about 3.5 cpb. Not bad for a software-based implementation of a block cipher
2017-11-22 07:57:39 -05:00
Jeffrey Walton
a5bf962681
Fix target misdetection on OS X with '-arch i386'
...
This tested OK on Linux OS X, Solaris and Windows. It may break things under IBM XL C/C++. We will cross that bridge when we get to it.
2017-11-16 19:37:29 -05:00
Jeffrey Walton
bd41c3d5dd
Remove SSE2 from cpu.cpp, add sse-simd.cpp
...
We need to ensure SSE2 does not cross pollinate into other CPU functions since SSE2 is greater than the minimum arch. The minimum arch is i586/i686, and both lack SSE2 instructions
2017-11-16 15:11:51 -05:00
Jeffrey Walton
8b52a03d08
Fix SunCC 12.2 compiler crash with GCM_Xor16_SSE2
...
SunCC 12.3 through 12.5 still cannot handle CLMUL, though. It would be nice if Sun fixed the regression.
2017-11-16 02:38:53 -05:00
Jeffrey Walton
c49b6d4d71
Cleanup comments and old code artifacts
2017-11-15 21:11:42 -05:00
Jeffrey Walton
e8bed05b7d
Use SSE4.1 instead of SSE4.2 for BLAKE2
...
BLAKE2 requires SSE4.1, no SSE4.2. This change should have been made when we split SSE4 into .1 and .2, but we needed more OS X and LLVM testing
2017-11-15 20:08:06 -05:00
Jeffrey Walton
a3784a3ac5
Update Power8 support for Autotools
2017-11-14 20:54:43 -05:00
Jeffrey Walton
dd1484800c
Rename mapfile for Solaris
2017-11-12 22:48:51 -05:00
Marcel Raad
4043164205
RFC: workarounds for original MinGW ( #531 )
...
* Set default target Windows version for MinGW to XP
The original MinGW from mingw.org targets Windows 2000 by default, but lacks
the <wspiapi.h> include needed for Windows 2000 support.
* Disable CRYPTOPP_CXX11_SYNCHRONIZATION for original MinGW
std::mutex is only available in libstdc++ if _GLIBCXX_HAS_GTHREADS is defined,
which is not the case for original MinGW. Make the existing fix for AIX more
general to fix this. Unfortunately, any C++ header has to be included to
detect the standard library and the otherwise empty <ciso646> is going to be
removed from C++20, so use <cstddef> instead.
2017-11-06 20:49:16 -05:00
Jeffrey Walton
f40afed631
Add more Autotools artifacts to distclean recipe
2017-11-06 07:27:37 -05:00
Jeffrey Walton
432881065c
Removed *.pl from clean rules
2017-11-05 07:21:09 -05:00
Jeffrey Walton
3b43ce53ec
Add more Autotools artifacts to distclean recipe
2017-11-05 03:42:39 -05:00
Jeffrey Walton
c50f2f23d8
Add more Autotools artifacts to distclean recipe
2017-11-05 03:38:19 -05:00
Jeffrey Walton
78a64e37d3
Remove cryptopp.mapfile from distclean rule
2017-11-01 18:30:49 -04:00
Jeffrey Walton
defa3f78d1
Add more Autotools artifacts to distclean recipe
2017-11-01 18:25:44 -04:00
Jeffrey Walton
a72225afff
Add more Autotools artifacts to distclean recipe
2017-11-01 15:51:10 -04:00
Jeffrey Walton
9e85633ff7
Add more Autotools artifacts to distclean recipe
2017-11-01 13:12:27 -04:00
Jeffrey Walton
0f2f753696
Add Autotools artifacts to distclean recipe
2017-11-01 12:11:04 -04:00
Jeffrey Walton
4e6c4e0522
Fix Solaris build using SunCC
...
This broke when we fixed xlC builds on AIX
2017-10-27 18:09:40 -04:00
Jeffrey Walton
6f25cf682a
Improve 64-bit support for GCC on AIX
2017-10-18 05:55:12 -04:00
Jeffrey Walton
c2c0a1ed82
Improve 64-bit support for XL C/C++
2017-10-18 04:49:26 -04:00
Jeffrey Walton
f8d97b83ed
Fix compile on old PowerPC
...
This cleans up the compile on old PwerMac G5's. Our Altivec and Crypto code relies on Power7 and Power8 extensions. There's no need to shoehorn Altivec and Power4 into old platforms, so we disable Altivec and Crypto unless Power7 is available. The GNUmakefile sets CRYPTOPP_DISABLE_ALTIVEC if Power7 is not available.
2017-10-17 20:47:14 -04:00
Jeffrey Walton
3ffff750d7
Fix feature detection on AIX with XL C/C++
2017-10-13 01:27:09 -04:00
Jeffrey Walton
8f6afb3079
Fix -pipe warning under SunCC
2017-09-16 22:09:50 -04:00
Jeffrey Walton
913a9e60d3
Remove CMake from library sources (GH #506 )
...
CMake can now be found at http://www.cryptopp.com/wiki/CMake . The Cmake project files are now maintianed by the community.
2017-09-16 21:09:40 -04:00
Jeffrey Walton
30d519c0bc
Use -O3 for IBM XL C/C++ (GH #502 )
...
We held back XL C/C++ due to warnings and self test failures. Since clearing Issue 502, we are OK for -O3 so we can live with the warnings.
2017-09-16 08:22:25 -04:00
Jeffrey Walton
4670e3d5bc
Revert "Use -O3 for IBM XL C/C++ (GH #502 )"
...
This reverts commit aa348abd15 . It caused a hang in the TEA algorithm. Also see GH #503 .
2017-09-16 05:55:37 -04:00
Jeffrey Walton
aa348abd15
Use -O3 for IBM XL C/C++ (GH #502 )
...
We held back XL C/C++ due to warnings and self test failures. Since clearing Issue 502, we are OK for -O3 so we can live with the warnings.
2017-09-16 02:19:06 -04:00
Jeffrey Walton
502fdc61c9
Add -msse2 to i586 build (Issue 494)
2017-09-12 21:23:23 -04:00
Jeffrey Walton
2ebd30d43c
Remove -mvsx option from Linux Power8 builds
...
This option is not needed
2017-09-12 18:10:07 -04:00
Jeffrey Walton
fb78afba29
Add PowerPC support to cpu.h and validate.cpp
2017-09-11 03:05:04 -04:00
Jeffrey Walton
9276b95221
Add Power8 support to Makefile
2017-09-09 20:33:06 -04:00
Jeffrey Walton
ba569b55ca
Reduce IBM XL C/C++ compiler to -O2
...
Early versions of IBM XL C/C++ for AIX, V13.1 fail some self tests, like TEA and XTEA
2017-09-09 17:22:42 -04:00
Jeffrey Walton
38de6b0436
Fix RTTI and PIC under IBM XL C/C++ on AIX
2017-09-09 16:24:01 -04:00
Jeffrey Walton
b974c7f98e
Avoid -pipe for IBM XL C/C++ compiler
2017-09-09 15:10:32 -04:00
Jeffrey Walton
55a5dd8b85
Add core to clean rule
2017-08-31 12:15:39 -04:00
Jeffrey Walton
ea07825127
Add -pthread for Linux and GCC compatibles
...
Fix AIX dtection
Guard use of -m32 and -m64
2017-08-31 10:08:18 -04:00
Jeffrey Walton
c079abdbc0
Fix missing DetectArmFeatures for ARMv7 (GH #480 )
2017-08-30 11:12:39 -04:00
Jeffrey Walton
b2693c4327
Fix IS_ARMV8 in GNUmakefile
...
Fix guard for HasPMULL()
2017-08-30 10:00:46 -04:00
Jeffrey Walton
c06995a71b
Consistent use of grep and sed (GH #476 )
...
MinGW is really messing things up for us.
2017-08-29 08:57:04 -04:00
Jeffrey Walton
76c4d6e9fa
Add -xarch options to linker flags (Issue 472)
...
Also see https://docs.oracle.com/cd/E19205-01/819-5267/bkabt/index.html
2017-08-28 17:51:59 -04:00
Jeffrey Walton
f488221992
Test align 16 for i386 and x86_64
2017-08-27 19:01:00 -04:00
Jeffrey Walton
2d5ed51ca9
Add Mapfile for CMake on Solaris (Issue 380)
2017-08-27 05:47:38 -04:00
Jeffrey Walton
5c6a32ba0f
Support Base Implementation + SIMD implementation on Solaris (PR #461 )
2017-08-24 19:17:21 -04:00
Jeffrey Walton
b57f7f0ae0
Rollup CMake fixes for OpenBSD, MinGW (Issues 380, 466-468, PR #469 )
...
Rollup CMake fixes for OpenBSD (Issues 467-468)
Rollup CMake fixes for MinGW (Issues 466)
Add CRYPTOPP_ENABLE_ARCH (Issue 380)
2017-08-24 07:26:14 -04:00
Jeffrey Walton
b3cacd8287
Fix 32-bit ARM NEON detection
...
BeagleBone's, RPI-3's, etc
2017-08-23 19:35:45 -04:00
Jeffrey Walton
9c9e69119f
Remove -march=native as default in Makefile and CMake (PR #465 )
...
Remove -march=native as default in Makefile and CMake (PR #465 )
2017-08-23 16:13:20 -04:00
Jeffrey Walton
2a2f6cb7b3
Fix SSSE3 issues under GCC 4.4.5 on Debian 6
2017-08-17 19:04:00 -04:00
Jeffrey Walton
e3c8e69ba3
Rework makefile cpu feature detection code for the BSDs
2017-08-17 16:35:56 -04:00
Jeffrey Walton
e2c377effd
Split source files to support Base Implementation + SIMD implementation (GH #461 )
...
Split source files to support Base Implementation + SIMD implementation
2017-08-17 12:33:43 -04:00
Jeffrey Walton
6a29d8c56f
Use -O1 for Asan and UBsan
2017-08-14 01:05:03 -04:00
Jeffrey Walton
18a05659f3
Switch from -O2 to -O3 in the makefile (Issue 454)
...
Also see https://groups.google.com/d/msg/cryptopp-users/AEiGyjq15tw/GBAyDA6fBgAJ
2017-08-04 18:31:52 -04:00
Jeffrey Walton
77d2e4eaf5
Add AppVeyor rule to makefile
...
This should sidestep some problems we are experiencing with AppVeyor during x64 builds. Specifically, the missing VCUpgrade.exe and the poor job it does when upgrading our project for the platform\'s tools.
This recipe takes cryptlib.vcxproj and cryptest.vcxproj, and copies it into TestScripts. This ensures TestScripts always has the latest Visual Studio project files. Then, the recipe changes PlatformToolset to the undocumented $\(DefaultPlatformToolset\). Finally, our AppVeyor test script will copy TestScripts/*.vcxproj into PWD before executing MSbuild.
Also see http://stackoverflow.com/questions/43423761/cant-perform-64-bit-testing-under-appveyor , http://stackoverflow.com/questions/45452145/how-to-set-platformtoolset-property-from-msbuild and http://stackoverflow.com/questions/43441273/how-to-run-vcupgrade-before-appveyor-build
2017-08-02 22:01:16 -04:00
Jeffrey Walton
2171a3a379
Update DLL_SRCS list
...
Also see http://groups.google.com/forum/#!topic/cryptopp-users/Q8_6mSS5ZSw on the mailing list
2017-07-31 19:04:48 -04:00
Jeffrey Walton
0df38c3506
Fix build timeout due to tracking vars under UBsan
...
Also see https://stackoverflow.com/q/2954473/608639 and https://stackoverflow.com/q/708807/608639
2017-05-28 17:00:09 -04:00
Jeffrey Walton
814de0f0c7
Use "relative" option for gcov recipe
2017-05-27 07:18:48 -04:00
Jeffrey Walton
a139d6a846
Cleanup gcov artifacts in clean rule
2017-05-27 07:02:44 -04:00
Jeffrey Walton
cab2b5a181
Reduce optimizations for code coverage recipes
2017-05-27 05:16:09 -04:00
Jeffrey Walton
40395c0150
Attempt to add Code Coverage report (Take 3)
...
This should be interesting...
2017-05-27 03:47:50 -04:00
Jeffrey Walton
345b4e49e2
Attempt to add Code Coverage report (Take 2)
...
This should be interesting...
2017-05-27 03:42:50 -04:00
Jeffrey Walton
84e6961457
Updated makefile trim and convert rules
...
Whitespace check-in
2017-05-26 10:08:44 -04:00
Jeffrey Walton
0c4b80c995
Remove unaligned access safety with Asan and UBsan
...
NO_UNALIGNED_DATA_ACCESS is now the norm. Those who allow unaligned data accesses are the special case.
2017-05-21 20:45:08 -04:00
Bernhard M. Wiedemann
033fed8c92
have constant link order ( #426 )
...
Make builds reproducible
See https://reproducible-builds.org/ for why this is good.
Without this patch g++ would order functions in libcryptopp.so.5.6.5
depending on random order of files in the build system's filesystem.
2017-05-19 18:34:08 -04:00
Jeffrey Walton
1b1c32d7cf
Build RDRAND for all platofrms (Issue 419, PR 424)
...
We have not been able to determine a reliable way to detect cpu's and platforms with Cmake. We are side stepping the Cmake problem by building rdrand.cpp all the time. If its not avilable for a cpu or platform, then RDRAND or RDSEED throw an exception.
2017-05-17 16:21:20 -04:00
Jeffrey Walton
ae09662f43
Update Makefile to trim data files
2017-05-15 22:53:44 -04:00
Jeffrey Walton
32ab4af5ff
Add Threefish to project files
...
Whitespace check-in
2017-05-14 15:27:50 -04:00
Jeffrey Walton
b40d4d9180
Add CRYPTOPP_COVERAGE for Asan and UBsan builds
2017-05-11 01:35:32 -04:00
Jeffrey Walton
c62e1ade6e
Add Makefile recipe for Valgrind builds
2017-05-06 22:54:49 -04:00
Jeffrey Walton
c1377b2955
Add additional self tests under debug builds
2017-05-05 17:21:08 -04:00
Jeffrey Walton
9614307ab7
Add CRYPTOPP_COVERAGE define for 'make coverage' recipe
2017-05-04 03:01:07 -04:00
Jeffrey Walton
e2f5da337e
Add mapfile to allow additional capability bits
...
Also see http://www.oracle.com/technetwork/server-storage/solaris/hwcap-modification-139536.html
2017-04-23 12:11:08 -04:00
Jeffrey Walton
89176e51cd
Add safety for SSSE4.1 and SSE4.2 intructions
...
They are giving ARIA and BLAKE2 trouble. It looks like SSE4 support appeared in the GCC compiler around 4.1 or 4.2. It looks like SHA support appeared in the GNU assembler around 2.18
2017-04-23 06:37:03 -04:00
Jeffrey Walton
7562e38ad6
Add safety for SHA intructions
...
It looks like SHA support appeared in the GCC compiler around 4.8 or 4.9. It looks like SHA support appeared in the GNU assembler around 2.23
2017-04-22 19:46:13 -04:00
Jeffrey Walton
cd65ce873a
Add -xmemalign=4i for Sun SPARC (Issue 403)
2017-04-22 01:15:17 -04:00
Jeffrey Walton
b784852998
Add no-asm target to ease testing of -DCRYPTOPP_DISABLE_ASM
...
This is intended to be used on Travis CI
2017-04-17 00:20:22 -04:00
Jeffrey Walton
bf92cb0039
Split regtest.cpp into regtest{1|2|3}.cpp
...
regtest.cpp is where ciphers register by name. The library has added a number of ciphers over the last couple of years and the source file has experienced bloat. Most of the ARM and MIPS test borads were suffering Out of Memory (OOM) kills as the compiler processed the source fille and the included header files.
This won't stop the OOM kills, but it will help the situation. An early BeagleBoard with 512 MB of RAM is still going to have trouble, but it can be worked around by building with 1 make job as opposed to 2 or 4.
2017-04-13 21:45:21 -04:00
Jeffrey Walton
c21023e2dc
Removed 'aligned' makefile target. It was made default in 5.6.5
2017-03-28 23:49:58 -04:00
Jeffrey Walton
6c50a99254
Fix GNUmakefile to keep *.s files
...
The distclean recipe deleted ASM files (*.s) rather than preprocessed ASM files (*.S). Leave them both now.
2017-03-25 01:42:23 -04:00
Jeffrey Walton
6381faf277
Rename rdrand.S to rdrand.s
2017-03-23 16:05:30 -04:00
Jeffrey Walton
d865cf9e62
Fix OpenBSD 6.0 compile with GCC 4.9 (Issue 395)
...
This check-in also enables the 64-bit RDRAND routines for X32. The changes were with held until they could be tested. The testing occurred with Issue 395
2017-03-22 17:26:25 -04:00
Jeffrey Walton
f502ee9218
Simplify C++ dynamic object initialization
...
Wrap DetectArmFeatures and DetectX86Features in InitializeCpu class
Use init_priority for InitializeCpu
Remove HAVE_GCC_CONSTRUCTOR1 and HAVE_GCC_CONSTRUCTOR0
Use init_seg(<name>) on Windows and explicitly insert at XCU segment
Simplify logic for HAVE_GAS
Remove special recipies for MACPORTS_GCC_COMPILER
Move C++ static initializers into anonymous namespace when possible
Add default NullNameValuePairs ctor for Clang
2017-03-20 08:51:10 -04:00
Jeffrey Walton
354502d59d
Change HAS_NASM to USE_NASM. The makefile does not etect it automatically
2017-03-14 18:38:37 -04:00
Jeffrey Walton
4bcaabbe26
Updated RDRAND and RDSEED under NASM
...
Port rdrand.S to Cygwin and OS X
Add DISABLE_NATIVE_ARCH to CmakefileList and GNUmakefile. It supresses the addition of -march=native. DISABLE_NATIVE_ARCH replaces DISABLE_CXXFLAGS_OPTIMIZATIONS in CmakefileList (the latter is now deprecated).
2017-03-13 15:57:47 -04:00
Jeffrey Walton
a0bb490056
Define _XOPEN_SOURCE for Cygwin/Newlib (Issue 315)
2017-03-10 01:53:51 -05:00
Jeffrey Walton
86a45fd1ca
Suppress unneeded output in Makefiles
2017-03-09 04:01:36 -05:00
Jeffrey Walton
448282331b
Remove HTML echo's from 'make benchmark' recipe
2017-03-08 15:45:38 -05:00
Jeffrey Walton
1e5d6ee8d4
Add ASM and S files to trim recipe
2017-03-07 02:48:58 -05:00
Jeffrey Walton
26db40567d
Add Integer Bitops tests (Issue 344)
2016-12-06 20:56:57 -05:00
Jeffrey Walton
40230dd3bf
Removed MAINTAIN_BACKWARDS_COMPATIBILITY_562 (Issue 70)
2016-12-03 00:32:07 -05:00
Jeffrey Walton
484da03c7b
Add Poly1305 class to project files (Issue 338)
2016-11-27 16:56:57 -05:00
Jeffrey Walton
456bd2b1b7
Add architecture option delimiters so distros can easily remove it
...
The sed command to delete the lines are:
sed '/# BEGIN MARCH_CXXFLAGS/,/# END MARCH_CXXFLAGS/d' GNUmakefile
2016-11-02 18:26:17 -04:00
Jeffrey Walton
8de854cae6
Add adhoc.cpp to test sources (Issue 332)
2016-11-01 05:07:57 -04:00
Jeffrey Walton
1e7890bed9
Additional use of $(strip $(CXXFLAGS)) cleanup
2016-10-26 18:24:32 -04:00
Jeffrey Walton
2cd0fc993a
Add GNUmake $strip to cleanup CXXFLAGS. Fols cryptest.sh tests
2016-10-26 03:53:28 -04:00
Jeffrey Walton
29dae707fd
Guard use of MacPorts GCC and -DCRYPTOPP_CLANG_INTEGRATED_ASSEMBLER
2016-10-25 22:42:04 -04:00
Jeffrey Walton
de6f4d56ec
Guard addition of '-march=native' in case a user specifies it in CXXFLAGS
...
This allows a user to 'CXXFLAGS="-DNDEBUG -g2 -O3 -march=x86-64" make -j 8' without the makefile adding -march=native
2016-10-25 19:42:54 -04:00
Alon Bar-Lev
db50b93766
build: add DISABLE_CXXFLAGS_OPTIMIZATIONS option
...
handy when packaging should control optimization without build system
masking. Especially handy when building to common architecture.
no change of behavior if DISABLE_CXXFLAGS_OPTIMIZATIONS is unset.
Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
2016-10-21 23:49:06 +03:00
Jeffrey Walton
8fafb4e98c
Add cryptdll-windows.cmd to TestScripts
2016-10-06 00:02:33 -04:00
Jeffrey Walton
28b3219d00
Add VS project files to list of trimmed files
2016-10-02 22:25:51 -04:00
Jeffrey Walton
46a4385db5
Add cryptest-windows.pl script
2016-10-01 14:44:40 -04:00
Jeffrey Walton
b5b8dc86bd
Add TestScripts to GNUmakefile
2016-09-23 23:30:44 -04:00
Jeffrey Walton
f57c4dced5
Moved config.h → config.compat; moved config.recommend → config.h
...
Also see http://groups.google.com/forum/#\!topic/cryptopp-users/bWcRw1XgJ_Q
2016-09-18 12:36:50 -04:00
Jeffrey Walton
262e95fd84
Add VS2010 *.filters files to list of files converted to CRLF endings
2016-09-17 17:20:24 -04:00
Jeffrey Walton
677a83501c
Removed -erroff=wvarhidemem -erroff=voidretw for SunCC after warning cleanup
...
Also see Commits b69d904499 , 92ed8454c7 , 7c3345585c , and 875852fcbc
2016-09-14 21:31:10 -04:00
Jeffrey Walton
c569e81edc
Cleaned dylib artifacts
2016-09-10 09:46:24 -04:00
Jeffrey Walton
4414b864cf
Make VS2010 default. Archive VS2005 project files. Archive Borland project files
...
VS2005 project files are available in vs2005.zip
Borland 10 project files are available in bds10.zip
2016-09-10 04:32:04 -04:00
Jeffrey Walton
3074541e92
Bump Crypto++ version number from 5.6.3 to 5.6.4
2016-09-10 02:51:54 -04:00
Jeffrey Walton
677c09584c
Removed workspace and project files from FileList.txt. Cleared 'make convert' error for makefile recipe
2016-09-09 03:33:06 -04:00
Jeffrey Walton
7f958575ea
Squashed commit of the following:
...
commit 47c75c6e9397e240919207e50e5a611d3e2a2428
Merge: d7685c2 42085ee
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 20:20:39 2016 -0400
Attempting to fix binary file merge conflict
commit d7685c2d946beecc419ddb6901c24e972c7cf3ee
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 16:39:23 2016 -0400
Add vsClean.cmd to vs2010.zip
commit 4b96fdf1c551260da60eb021f324bcc3fcfec626
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 16:15:38 2016 -0400
Add Keccak to vs2010.zip
commit 3962db73b7113ee805b46a5bb4da64e204fe6bb0
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 15:40:35 2016 -0400
Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files
commit 44401448cbb6c8125b0f1ab4419c5b174408ffd7
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 15:39:23 2016 -0400
Fold hmqv.cpp and fhmqv.cpp into mqv.cpp. There's no need for three empty source files
commit 847bfccb8d5c388e67745dc8c69768fa503c5135
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 14:48:02 2016 -0400
Whitespace cleanup
commit 46a37be6fef361704dcf852bc9a099ce0a1da4c8
Merge: aefb8f8 3697867
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 14:43:01 2016 -0400
Merge 'master' into 'keccak'
commit aefb8f8ff2b81b967089c53b457a92fc6f7544d6
Merge: 51a828b 3c91d93
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 12:39:51 2016 -0400
Merge 'master' into 'keccak'
commit 51a828b88e37a4d18abb00300cd5522bd0e110c5
Merge: 4152870 e7c7722
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 10:41:36 2016 -0400
Merge 'master' into 'keccak'
commit 415287041e69ddadf5ca1f6fc794b87e145fc2db
Merge: 357a0c5 83ac849
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 10:34:45 2016 -0400
Merge 'master' into 'keccak'
commit 357a0c510f75e4e58078b500dd469462e90f7650
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 10:13:32 2016 -0400
Removed deprecated warning from SHA3 classes
commit 5cf9ec10d53b895b5a583e265e4e1298ed402195
Merge: 10ce0ed c2d60cc
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 09:43:15 2016 -0400
Merge 'master' into 'keccak'
commit 10ce0ed4c5b8a1ea230062fd2dfdec0d87ec5b42
Author: Jeffrey Walton <noloader@gmail.com>
Date: Thu Sep 8 09:37:40 2016 -0400
Add Keccak implementation based on early SHA3. Change SHA3 to NIST FIPS 202 conforming implementation
2016-09-08 20:24:25 -04:00
Jeffrey Walton
64ac2b44f1
Add missing hmqv.h, hmqv.cpp, fhmqv.h, fhmqv.cpp to down level VS project, Borland project and cryptest.nmake
2016-09-08 11:18:43 -04:00
Jeffrey Walton
7c3967ad8f
Add disassembly tests to verify some aspects of code generation. Fix SUNCC_CXXFLAGS flags. Fix "Quick Tests" undr Clang (Issues 245 and 246)
2016-08-24 06:19:42 -04:00
Jeffrey Walton
ff1e5ce63a
Tweak makefile variables (SUNCC_120_OR_LATER → SUNCC_510_OR_LATER, etc)
2016-08-23 23:43:50 -04:00
Jeffrey Walton
3fee549476
Fix SunCC 12.3 and 12.4 verions
2016-08-23 22:17:56 -04:00
Jeffrey Walton
c1b692af13
Fix SunCC 12.2 compile error
2016-08-22 08:53:01 -04:00
Jeffrey Walton
8c63bc3a63
Add -DCRYPTOPP_NO_UNALIGNED_DATA_ACCESS for -O3 and above for ARM and MIPS (Issue 231)
2016-07-29 05:56:12 -04:00
Jeffrey Walton
6ed2a60a53
Add -DCRYPTOPP_NO_UNALIGNED_DATA_ACCESS for -O5 and -Ofast
2016-07-21 02:57:50 -04:00
Jeffrey Walton
fd4287e433
Add LLVM bitcode to temporaies cleaned by 'make distclean' rule
2016-07-20 03:03:01 -04:00
Jeffrey Walton
7ec3b29df6
Fix missing BMI/BMI2 instrinsics under GCC on Solaris (Issue 230)
2016-07-20 01:17:55 -04:00
Jeffrey Walton
26ab08e29d
Fix Sun Studio 12.5 detection. Only add "-w -erroff=wvarhidemem -erroff=voidretw" to SunCC 12.2 and above
2016-07-08 18:32:12 -04:00
Jeffrey Walton
2e14d5d7cb
Fix "/usr/bin/ld: -f may not be used without -shared" (Issue 219)
2016-07-06 15:08:24 -04:00
Jeffrey Walton
6c0b120072
Go back to Commit 66ada4cc61
2016-07-06 14:39:18 -04:00
Mouse
87be783cd1
Revert "Merge remote-tracking branch 'upstream/master'" - not intended to be merged by me
...
This reverts commit 762c315566 , reversing
changes made to b48866631a .
2016-07-06 12:01:28 -04:00
Jeffrey Walton
fb72dbc8cb
Add MacPorts GCC compiler and Clang integrated assembler support. This is a merge of the development branch 'clang-ia'
2016-07-05 02:48:27 -04:00
Jeffrey Walton
8a563177b3
Fix Cygwin debug build (Binutil PR 20268)
2016-06-17 06:36:22 -04:00
Jeffrey Walton
3c19dc4ce2
Guard setting of IS_GAS. Remove IS_GAS from MacPorts compiler test
2016-06-16 05:17:16 -04:00
Jeffrey Walton
3d8a08f6b6
Fix -Wa,q typo
2016-06-16 01:06:30 -04:00
Jeffrey Walton
58840a030b
Fix -DCRYPTOPP_DISABLE_ASM with MacPorts compiler (Issue 189)
2016-06-15 23:16:52 -04:00
Jeffrey Walton
2cc5084d7a
Enable -Wa,q for MacPort GCC/Clang integrated assembler
2016-06-15 18:58:02 -04:00
Jeffrey Walton
8d940f1c3f
Enable -Wa,--divide for GCC/GAS on Solaris (Binutil PR 4572)
2016-06-15 09:55:10 -04:00
Jeffrey Walton
b1df5736a7
Merge 'solaris' dev branch into 'master'
2016-06-15 05:02:28 -04:00
Jeffrey Walton
42e644f25a
Remove _GLIBCXX_CONCEPT_CHECKS for debug builds. Its part of GCC courtesy of Boost, its broken and its unmaintained
2016-06-15 02:57:08 -04:00
Jeffrey Walton
454f528d3c
Simplified IS_X86 and IS_X64 un SunOS. Add separator for benchmark tests
2016-06-10 03:05:34 -04:00
Jeffrey Walton
0403fc747d
Added Sun Studio testing (Issue 180)
2016-06-09 03:47:57 -04:00
Jeffrey Walton
b02724e788
Remove -fPIC from Solaris builds. -Kpic will be added appropriately
2016-06-09 01:02:56 -04:00
Jeffrey Walton
f4ef75ef91
Fix GCC and Solaris builds picking up Sun Studio flags
2016-06-09 00:54:53 -04:00
Jeffrey Walton
37dad288fd
Add warnings ands some suppressions to Sun Studio builds
2016-06-09 00:51:23 -04:00
Jeffrey Walton
f836f741e8
Update makefile to make it easier to tune Solaris builds during testing
2016-06-08 23:30:39 -04:00
Jeffrey Walton
d965ca66d9
Fixed broken Sun Studio compile (Issue 179)
2016-06-08 21:41:45 -04:00
Jeffrey Walton
639c9024f4
Fix Sun Studio builds (Issue 179)
2016-06-08 19:51:36 -04:00
Jeffrey Walton
69f7802b53
Add rules for AArch32 and AArch64 detection. Restrict shared object warning to shared object and dylibs
2016-05-09 02:59:16 -04:00
Jeffrey Walton
676e6546e5
Fix CPU_SPEED
2016-04-22 16:09:28 -04:00
Jeffrey Walton
63529159d6
Add blake2.cpp chacha.cpp to DLLSRCS
2016-04-22 14:19:51 -04:00
Jeffrey Walton
f8ad685c3d
Rename bench.cpp to bench1.cpp
2016-04-22 14:15:09 -04:00
Jeffrey Walton
dfe2946a75
Add Coverity artifacts to clean recipe
2016-04-11 00:51:15 -04:00
Jeffrey Walton
34a34967ac
Cleaned artifacts from testing. Move documentation clean rule to distclean
2016-03-29 03:47:33 -04:00
Jeffrey Walton
4a3bd8a01f
Fixed compile for NetBSD
2016-03-20 01:14:19 -04:00
Jeffrey Walton
d4f0dee87a
Fixed PowerPC detection code on OS X
2016-01-25 09:15:10 -05:00
Jeffrey Walton
f20585ccb8
(1) Remove -pipe from ARM builds (Issue 120); (2) Added section labels for wiki article; (3) Moved LIB_MAJOR, LIB_MINOR and LIB_PATCH into Common Section
2016-01-24 17:02:16 -05:00
andresgaragiola@gmail.com
6737fdf91d
Fixed the DLLSRCS variable of GNUmakefile to compile without errors cryptopp.dll in Windows.
2016-01-14 17:33:17 -03:00
Jeffrey Walton
c65c88a432
Added -fno-omit-frame-pointer for asan recipe
2016-01-11 06:54:00 -05:00
Jeffrey Walton
86d59828c7
Added cryptest.info to clean rule
2016-01-04 20:26:16 -05:00
Jeffrey Walton
9696b9e5e7
Added "lean" recipe that setups for for dead code stripping. Added test cases
2016-01-04 18:24:18 -05:00
Jeffrey Walton
748e79e87c
Added full support for CRYPTOPP_DATA_DIR to test script. Changed makefile to use CPU_SPEED so users could change it from the environment
2016-01-03 17:32:11 -05:00
Jeffrey Walton
a17b23d42c
Cut-in support for CRYPTOPP_DATA_DIR during install
2016-01-03 15:30:59 -05:00
Todd Knarr
69a76042e2
Fix problem, issue #65 comment 168191115
2015-12-31 13:05:14 -08:00
Jeffrey Walton
6652e94d20
Added -headerpad_max_install_names to dylib targets. Added standard directory vairables to GNUmakefile-cross
2015-12-31 01:43:42 -05:00
Jeffrey Walton
9e4e210834
Switched to standard directory variables for include/, lib/, bin/ and share/
2015-12-29 06:32:45 -05:00
Jeffrey Walton
da95a18c19
Added locv to makefile recipe, added both cryptest.exe runs (thanks Jack Lloyd)
2015-12-29 04:50:15 -05:00
Grant Ayers
4f277dab59
Fix an issue that caused targets to be rebuilt unnecessarily
...
and prevented updated object files from regenerating targets.
The 'public_service' phony target should be an 'order-only' prerequisite so
that it doesn't cause its target to be rebuilt when it is run.
However, object files were specified as order-only while the 'public_service'
target was not. This is reproducible by running 'make' twice. Another effect
is that when these object files change they will not cause the target to be
updated while they are order-only.
2015-12-28 16:30:01 -08:00
Jeffrey Walton
13748582e5
Added "make coverage" recipe. Added additional SecBlock tests
2015-12-28 07:06:50 -05:00
Jeffrey Walton
79882d4c7d
Tweaked makefile recipes to use variables for CP, MV, MKDIR, etc. Added Cmake artifacts to distclean rule
2015-12-26 06:45:59 -05:00
Todd Knarr
09d194d8cf
Added a makefile target to build the versioned .so if the unversioned name is given.
...
Added DESTDIR to an ldconf line that was missint it.
2015-12-26 03:00:31 -08:00
Todd Knarr
a3ac556e37
Resolve conflicts between master and version_shlib
2015-12-25 13:06:43 -08:00
Todd Knarr
cba640d9f1
Merge branch 'master' of https://github.com/weidai11/cryptopp into version_shlib
2015-11-26 07:02:04 -08:00
Jeffrey Walton
ed6c1de915
Fixed typos in comments
2015-11-25 15:20:37 -05:00
Todd Knarr
08e88dfbd3
Changes per noloader's comments in pull #65
2015-11-24 20:14:53 -08:00
Todd Knarr
67ba451c6a
Merge branch 'master' of https://github.com/weidai11/cryptopp into version_shlib
2015-11-24 19:36:54 -08:00
Jeffrey Walton
298988a5b9
Crypto++ 5.6.3 check-in
2015-11-22 19:17:15 -05:00