Commit Graph

450 Commits (0c82df181c98912a01b00bed298b567724feafba)

Author SHA1 Message Date
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
Jeffrey Walton b3e49d8c96 Additional documentation; fixed issues with Clang integrated assembler and different versions numbers for LLVM Clang and Apple Clang; fixed missing header in DSA class 2015-11-19 13:09:33 -05:00
Jeffrey Walton 628f40755a Cleared issues 11,12,13 (Clang integrated assembler), 58 (RC rollup), 66 (Coverity rollup) 2015-11-18 15:35:35 -05:00
Todd Knarr 65849072f4 Linux shared-object library versioning 2015-11-08 12:29:56 -08:00
Jeffrey Walton 48809d4e85 CRYPTOPP 5.6.3 RC6 checkin 2015-11-05 01:59:46 -05:00
Jeffrey Walton c5b1adde3a Added "system" target that dumps a number of internal variables for testing and troubleshooting 2015-07-31 14:00:24 -04:00
Jeffrey Walton b1085b7384 Changed Cygwin to use -O2 instead of -O3 with GCC 4.9 due to crash 2015-07-31 10:22:15 -04:00
Jeffrey Walton 8796c9e684 Removed IS_CENTOS feature test 2015-07-31 08:09:59 -04:00
Jeffrey Walton 80b253c8d8 Removed IS_CENTOS feature test 2015-07-31 08:09:32 -04:00
Jeffrey Walton cfb68699b0 Fix "error: bad value (native) for -march= switch" on CentOS 5 2015-07-31 06:32:11 -04:00
Jeffrey Walton 2799132fd7 Added fipsalgt.cpp to list of Windows sources to be filtered. Its literally empty (everything is commented out) 2015-07-30 17:30:10 -04:00
Jeffrey Walton 5a35640912 Added validat0.cpp and moved bit tests into it. Provided tests for SafeConvert. Removed "using namespace std" from test sources (auto_ptr causes a collision becuase std:: provides it in C++03, but CryptoPP:: provides it in C++11 2015-07-30 10:36:49 -04:00
Jeffrey Walton cebf5906a9 Added "-Wcast-align" when CRYPTOPP_NO_UNALIGNED_DATA_ACCESS is in effect. Commented out at the moment because its very noisy 2015-07-26 23:47:46 -04:00
Jeffrey Walton 5ab200bb68 Added Install.txt to 'make dist' recipe 2015-07-26 02:33:46 -04:00
Jeffrey Walton f36dc3d643 Added rules to supress CRYPTOPP_NO_UNALIGNED_DATA_ACCESS warning 2015-07-26 00:39:29 -04:00
Jeffrey Walton fe9948e39a Moved IS_MINGW block back under x86 2015-07-25 09:27:59 -04:00
Jeffrey Walton 6ac2555052 Removed -Oz from symbolize. Moved MinGW libraries down before recipes 2015-07-25 09:17:26 -04:00
Jeffrey Walton 2c988356a9 Revert "Cleared "missing initializer for member '_LARGE_INTEGER::<anonymous struct>::HighPart'" under MinGW".
The commit accidentally committed a number of unneeded files while on Windows during testing.

This reverts commit 576749b4bb.
2015-07-25 07:19:41 -04:00
Jeffrey Walton 576749b4bb Cleared "missing initializer for member '_LARGE_INTEGER::<anonymous struct>::HighPart'" under MinGW 2015-07-25 07:16:45 -04:00
Jeffrey Walton ff8974f1fd Fixed variable expansion issue on Cygwin (other shells on on OSes were fine, like Bash and C shell) 2015-07-25 06:56:38 -04:00
Jeffrey Walton 427b45b4e7 Added some sane defaults for -g and -O if they are missing from CXXFLAGS 2015-07-25 05:03:13 -04:00
Jeffrey Walton 6bdcaefccd Added test for CRYPTOPP_NO_UNALIGNED_DATA_ACCESS, added warning if its not defined 2015-07-25 04:23:27 -04:00
Jeffrey Walton ac74f8e4df Added default flag detection for ARFLAGS. Added MACHINE,SYSTEM,RELEASE variables for overrides. Added *.dylib and *.dll to clean rule. Added *.s and *.ii to clean rule 2015-07-25 02:04:53 -04:00
Jeffrey Walton ed7566fb8d Fixed mis-detected Fedora 22/i686 2015-07-25 01:31:37 -04:00
Jeffrey Walton d6f5ed03bf Cleaned up and re-organized the makefile. There are now sections, with some comments calling out what various sections do and the work arounds that are in effect 2015-07-24 23:08:18 -04:00
Jeffrey Walton db40142116 Added -Wno-type-limits for GCC 4.3 and above. Its the GCC equivalent to Clang's -Wno-tautological-compare 2015-07-23 20:04:30 -04:00
Jeffrey Walton 3fd7a239f0 Backed out Clang integrated assembler changes. LLVM Bug 24232 pushed us over the edge. There is some skeleton code remaining for testing. To activate it, perform "make FORCE_ASM=1" 2015-07-23 16:47:03 -04:00
Jeffrey Walton 5af5c553e3 Added default for strip program. Added additional fodder to distclean recipe 2015-07-23 08:39:31 -04:00
Jeffrey Walton 123ca9b76d Added standard makefile targets, including distclean, dist, install-strip. Removed no-lib recipe because there's a proper dependency rule 2015-07-23 07:50:55 -04:00
Jeffrey Walton cd33142f6c Improved flow of setting variables in makefile 2015-07-23 03:17:18 -04:00
Jeffrey Walton b3924a7b86 Additional changes to support Clang's integrated assembler. They have not been activated though. Uri and other testers will be able to uncomment the TODO line and everything will work as expected 2015-07-23 02:18:57 -04:00
Jeffrey Walton 6d0dd41eb0 Specialized defines to work with/around Clang integrated assembler. The two defines are WORKAROUND_LLVM_BUG_18916 and CRYPTOPP_USING_CLANG_INTEGRATED_ASSEMBLER. Once the 18916 bug is fixed, the other issues around the integrated assembler will remain 2015-07-22 03:48:10 -04:00
Jeffrey Walton d40eee99c0 Ported relevant GNUmakefile changes to GNUmakefile-cross 2015-07-20 06:55:42 -04:00
Jeffrey Walton d5a6f4c628 Updated comment on why -Wall is only enabled for Clang 2015-07-20 04:16:40 -04:00
Jeffrey Walton 77556fca7b Backed-off -Wall for GCC due to issues when managing induced warnings when using -Wall. 2015-07-20 03:30:43 -04:00
Jeffrey Walton 4b4156e6ba Fixed compile for MinGW 2015-07-19 22:09:35 -04:00
Jeffrey Walton c4a5d802e7 Enabled -Wall for GCC 4.7 and above, and Clang 2015-07-19 15:04:57 -04:00
Jeffrey Walton 8c259ee6b4 Added recipe to create dependencies. The dependencies are only generated if multiarch is not in effect. MULTIARCH_SUPPORT was also changed to an overrideable makefile variable 2015-07-18 23:41:41 -04:00
Jeffrey Walton 134ba3e16b Added -fsanitize-undefined-trap-on-error to help with a call stack on violations. Disabled by default 2015-07-17 11:02:37 -04:00
Jeffrey Walton 04429b291d Added targets for UBsan and Asan 2015-07-16 00:47:09 -04:00
Jeffrey Walton 00cc470f04 Folded OPTIMIZE and SYMBOLS back into CXXFLAGS (we can use 'subst' to modify CXXFLAGS). Moved Cygwin work arounds into block guarded by IS_X86 (Cygwin only runs on Windows) 2015-07-15 19:03:49 -04:00
Jeffrey Walton 9bf0eed0f6 Cleared crash with GCC 4.8 and above and -O3. In a nutshell, it was due to vectorization and alignment violations agains the vmovdqa instruction 2015-07-13 22:53:16 -04:00
Jeffrey Walton 8ed9bc7f1f Fixed multiarch detection on OS X 2015-07-09 02:19:15 -04:00
Jeffrey Walton 94f28091e8 GNUmakefile improvements. Changed default optimization level to -O3, except on Cygwin. Added IS_DARWIN for consistency 2015-07-08 15:34:23 -04:00
Jeffrey Walton 99ed4c86db Added PHONY targets for clean, install and remove 2015-06-30 22:41:47 -04:00
Jeffrey Walton 1d8934e5b7 Removed -fPIC for Cygwin x86_64 compiles 2015-06-30 22:06:59 -04:00
Jeffrey Walton cf08f3e98d Remove dSYM directory for OS X during clean 2015-06-24 15:57:17 -04:00
Jeffrey Walton 4206b4a4dc Added IS_X86_64, enabled -fPIC for IS_X86_64. Cleared compile error when building the shared object 2015-06-14 19:07:06 -04:00
Jeffrey Walton 08b0e9105f Changed ISX86 -> IS_X86 for consistency 2015-06-08 05:14:17 -04:00
Jeffrey Walton ca6e2fa683 Fixed Clang compiler identification string 2015-06-07 20:50:10 -04:00
weidai ed7652256c fix compile with MINGW 2013-01-26 17:15:07 +00:00
weidai affcbcf139 fix clang dection for MacOS (Jeff Walton) 2012-05-23 17:56:48 +00:00
weidai 11c126bf8a fix compile with clang 2.9 (Jeff Walton) 2011-10-12 06:13:37 +00:00
weidai ac6a61ed39 From Jeff Walton:
* added 'static' and 'dynamic' targets
* added libcryptopp.so to cleanup
* continue install/cleanup on error
* force cryptest.exe to link with static library
2011-09-19 01:37:29 +00:00
weidai 0171970142 fix for makefile and Panama cipher validation failure on armel http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=619856 2011-04-25 17:42:11 +00:00
weidai 3492bcc1d1 fix AS detection on (from FreeBSD) 2011-01-27 20:14:02 +00:00
weidai 045d804f9b fix compile with GCC 4.4 and -march=i386
fix minor documentation issues
fix compile w/o GAS 2.19 or later
2010-08-08 23:02:36 +00:00
weidai 9d42a6f6de fix compile with Sun CC on Linux 2010-08-08 08:13:09 +00:00
weidai d43f0c7321 fix compile with Intel C++ Compiler 11.1 2010-08-04 23:42:11 +00:00
weidai a3f2091bcd fix compile on GCC 4.4 and greater 2010-07-29 08:51:39 +00:00
weidai c81fc05b99 better detection of GCC 4.2 2010-07-24 05:28:55 +00:00
weidai 9a892095a0 port to Sun Studio 12u1 Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21 2010-07-05 11:14:14 +00:00
weidai 1315a7bc9a port to Sun Studio 12u1 Sun C++ 5.10 SunOS_i386 128229-02 2009/09/21
change makefile to compile for both i386 and x86_64 on Darwin/Mac OS X
2010-07-05 01:15:14 +00:00
weidai 1ce62ff79b add makefile option for shared library 2010-06-29 01:14:22 +00:00
weidai 5b809d7931 fix compile on MacOS X and MinGW 2009-04-05 19:58:48 +00:00
weidai f299d530ce fix compile on FreeBSD 7.1 amd64 2009-03-14 22:21:14 +00:00
weidai e4295fda97 fix compile on ICC 11 2009-03-04 09:27:52 +00:00
weidai a47f06515b fix VC60 compile, project file line-endings, Apple GCC 4.2 compile 2009-03-03 10:18:44 +00:00
weidai fa25129ac9 port to Sun Studio 12's 64-bit C++ Compiler 5.9 Patch 124864-09 2008/12/16 2009-02-13 12:18:26 +00:00
weidai bb82d51d1e changed mind. remove -fPIC as default, document it as supported 2008-11-21 22:40:16 +00:00
weidai 12d515c6db add -fPIC to default flags 2008-11-21 05:33:00 +00:00
weidai c8fe7e0718 add "test" target 2008-02-02 08:38:21 +00:00
weidai 800bd3ad85 remove -msse2 since we don't use SSE2 intrinsics anymore 2007-09-24 01:57:43 +00:00
weidai 03e2f7c3ae don't use -msse2 for GCC 3.3 2007-05-05 02:57:27 +00:00
weidai 64157fa5e0 add -Wa,--divide for Solaris 2007-05-05 01:21:44 +00:00
weidai 1a66826785 remove extraneous -D__pic__ 2007-05-04 19:55:34 +00:00
weidai 0f96a7cd38 revert -ffunction-sections -fdata-sections 2007-05-04 19:19:52 +00:00
weidai 460c2d6c6a enable -O2 and -march=native -mtune=native 2007-05-04 15:12:23 +00:00
weidai 3a3fef7436 fix compile on Sun CC 2007-04-16 05:40:37 +00:00
weidai 68a38c0b9a fix compile with Intel compiler 2007-04-16 02:51:59 +00:00
weidai 38ca2b38a8 enabled optimization flags by default in GNUmakefile 2007-04-15 22:59:29 +00:00
weidai 43b41c1042 update version number, port to Sun C++ 5.8 2006-12-18 02:34:33 +00:00
weidai 5184d7c8f3 use egrep instead of grep 2006-12-12 08:42:19 +00:00
weidai d71d660150 fix ISX86 2006-12-11 09:15:53 +00:00
weidai f05ea58bb3 port to GCC 4, reorganize implementations of SetKey 2006-12-10 02:12:23 +00:00
weidai e23417d90a add -pthread and allow make install 2006-12-09 17:09:01 +00:00
weidai 9906ce0dd2 add more release build comments 2004-06-20 18:21:45 +00:00
weidai 9eab2390bc set CXX to c++ on Darwin 2004-06-19 11:42:41 +00:00
weidai 5bee373ff3 disable x86 assembly on systems without GNU as 2.10 or later 2004-06-19 11:00:52 +00:00
weidai 9a4304c42d use CXX instead of gcc directly 2003-10-22 21:08:07 +00:00
weidai 852394c4e0 add -lws2_32 on MinGW 2003-10-14 09:41:35 +00:00
weidai 5c3dbb91a2 use -msse2 on x86_64 2003-08-04 18:56:15 +00:00
weidai 93d56c76c1 enable SSE2 intrinsics on GCC 3.3 or later 2003-07-31 01:54:53 +00:00
weidai 259ee22eba split bench.cpp in 2 for alpha (.got subsegment exceeds 64K) 2003-07-29 01:16:22 +00:00
weidai 12157494b2 fix GCC compile 2003-07-11 19:16:35 +00:00
weidai 473e5df89b merge in 5.0.4 changes (exclude DES and SHA-2 from DLL),
attempt (failed) to build DLL with GCC
2003-07-10 04:34:23 +00:00
weidai d52b49c51f fix bug in Grouper
add RIPEMD-???, Whirlpool, Shacal2, Camellia, Two-Track MAC (Kevin Springle)
change ChannelSwitch to allow non-blocking input (denis bider)
change Redirector to allow more options (denis bider)
fix MaurerRandomnessTest
optimize MD2 (Kevin Springle)
2003-04-15 00:38:48 +00:00
weidai 538de80a91 various changes for 5.1 2003-03-20 01:24:12 +00:00
weidai a28627a6a5 add script-driven testing 2002-12-06 22:02:46 +00:00
weidai 1e45c2d305 compatibility fixes for MacOS X 2002-10-04 21:45:04 +00:00
weidai a3b6ece7ab Initial revision 2002-10-04 17:31:41 +00:00