Commit Graph

99 Commits

Author SHA1 Message Date
Andrew Noyes 1448d1b214 Don't check for c11 atomics on windows
We don't need it. We don't even compile eio.c on windows apparently.
2020-05-20 21:50:57 +00:00
Andrew Noyes 6289342908 Revert "Revert "Improve build-from-source user experience""
This reverts commit a7e2fe21a7.
2020-05-20 21:26:05 +00:00
A.J. Beamon a7e2fe21a7
Revert "Improve build-from-source user experience" 2020-05-20 12:37:51 -07:00
Andrew Noyes 55f0b13fe9 Require c11 atomics
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)

apparently is not enough, and gcc 4.8.5 e.g. passes whatever checks are
done for the above but doesn't support c11 atomics. Let's just check for
them explicitly.
2020-05-18 16:30:12 +00:00
Andrew Noyes 747243e9cb Set CMAKE_{C,CXX}_STANDARD_REQUIRED ON 2020-05-18 16:14:43 +00:00
Andrew Noyes b5ef0eab10 Enforce no static libcxx with tsan 2020-05-13 22:44:43 +00:00
Kao Makino c2e80fe47b Linux aarch64 port 2020-05-09 22:14:03 +00:00
A.J. Beamon 0be453de0a
Merge pull request #3026 from atn34/atn34/tsan
Add USE_TSAN and fix some data races
2020-05-07 18:06:18 -07:00
Andrew Noyes 202129d5a7 Require c11 support for our c compiler 2020-05-07 23:45:19 +00:00
Alex Miller 78d644f673
Merge branch 'master' into bugfixes/cmake-includes 2020-05-04 02:11:46 -07:00
Dave Cottlehuber d7fe80b612 cmake: add dtrace toggle 2020-04-30 20:11:26 +00:00
Evan Tschannen 519ac70a2a
Revert "Enable -Wclass-memaccess and fix warnings" 2020-04-29 15:51:29 -07:00
Evan Tschannen 6156042f67
Merge pull request #3017 from tclinken/enable-wclass-memaccess
Enable -Wclass-memaccess and fix warnings
2020-04-29 10:38:59 -07:00
Andrew Noyes 50592d58fd Fix botched merge 2020-04-25 03:33:23 +00:00
Andrew Noyes 1a71062ea9 Support compiling/running with thread sanitizer 2020-04-25 00:26:50 +00:00
Markus Pilman e870925b80 fixed documentation for USE_LD 2020-04-23 14:37:20 -07:00
tclinken 2049b3802a Only use -Wclass-memaccess when compiling C++ files 2020-04-23 12:42:26 -07:00
Markus Pilman 159b97517b Chose sensible compiler defaults 2020-04-23 12:24:12 -07:00
tclinken b1f525583a Added -Wclass-memaccess compiler option and fixed warnings 2020-04-22 21:53:42 -07:00
Markus Pilman a3b5efe6eb suppress weird ccache warning with clang 2020-04-10 10:08:24 -07:00
Markus Pilman ceab4374cf statically link libc++ 2020-04-09 14:16:14 -07:00
Markus Pilman 8b5780c36c don't include source and binary dir
This forces users to use include paths from the sources root.

So `#include "Arena.h"` won't work anymore, only
`#include "flow/Arena.h"` will.
2020-04-06 10:13:49 -07:00
Markus Pilman 95fc5ae4ec Introduce `set_env` function
This makes it easier to handle environment variables in cmake.
It also reduces the code needed to check whether variables are correct
2020-03-27 15:44:55 -07:00
Alex Miller 188b564dfb
Merge pull request #2147 from atn34/werror
Don't use -Werror by default
2020-02-13 18:35:57 -08:00
mpilman 5a9d420cb7 Merge remote-tracking branch 'upstream/release-6.2' into release-merges/20200210 2020-02-10 10:02:05 -08:00
mpilman 5c294e2646 Several build improvements - enables parallel builds on Windows (again) 2020-02-09 08:34:14 -08:00
mpilman d09e07f1f5 Merge remote-tracking branch 'upstream/master' into features/icc 2020-02-04 10:26:18 -08:00
Andrew Noyes a6b3a3ee47 Set USE_WERROR on build/docker-compose.yaml 2020-02-03 09:09:43 -08:00
Andrew Noyes 33132fe0ca Set USE_WERROR to ON for gcc 8.3.1 2020-02-03 09:06:29 -08:00
Andrew Noyes ffe617376c Don't use -Werror by default
We'll still enforce that PR's are warning-free before they're merged.
2020-02-03 09:06:29 -08:00
Daniel Smith 9f1fda554c
Formatting 2020-01-28 21:32:56 -05:00
Daniel Smith 4ecf58adff
Apply suggestions from code review
Co-Authored-By: Markus Pilman <markus@pilman.ch>
2020-01-28 21:32:13 -05:00
Daniel Smith b9de844ee7 Add link option specific to Clang 2020-01-28 12:51:05 -05:00
Alvin Moore 21390c493a Merge branch 'release-6.2' of github.com:apple/foundationdb into release_6.2_merge
Resolved merge by keeping new test file from master branch: SampleNoSimAttrition.txt adding new constraint from Release branch about existing test file: SimpleExternalTest.txt

# Conflicts:
#	tests/CMakeLists.txt
2019-12-18 09:05:08 -08:00
Alvin Moore 28d626800d Allow Valgrind to be enabled via environmental variable 2019-12-17 07:12:26 -08:00
Alvin Moore 3da9d182b1 Switched to using environmental variable for enablement since TOUPPER did not produce expected results sometimes 2019-12-16 14:37:51 -08:00
Alvin Moore 413cafe368 Modified compilation and package names to conform to existing compilation options and packaging names
Modifications to existing standards (even when wrong should be made outside of port to cmake)
2019-12-15 07:13:46 -08:00
Andrew Noyes 6a5f2a7eec Disable alignment-requiring instructions until #1434 is resolved 2019-12-11 11:05:02 -08:00
Andrew Noyes 991733a7fb Disable alignment-requiring instructions until #1434 is resolved 2019-12-05 15:11:10 -08:00
Andrew Noyes 1721658210 Ignore -fsanitize=alignment for UBSAN
Until we fix all occurrences
2019-12-02 16:20:06 -08:00
Andrew Noyes 4022ca1381 Add USE_UBSAN cmake option 2019-12-02 16:20:06 -08:00
Andrew Noyes 30908b0bb1 Ignore -fsanitize=alignment for UBSAN
Until we fix all occurrences
2019-11-26 19:34:44 -08:00
Andrew Noyes b893374c68 Add -Wno-attributes for gcc 2019-10-25 10:42:22 -07:00
Evan Tschannen 3325980c03 Merge branch 'release-6.2'
# Conflicts:
#	CMakeLists.txt
#	documentation/sphinx/source/release-notes.rst
#	fdbserver/DataDistribution.actor.cpp
#	fdbserver/OldTLogServer_6_0.actor.cpp
#	fdbserver/TLogServer.actor.cpp
#	fdbserver/WorkerInterface.actor.h
#	fdbserver/worker.actor.cpp
#	versions.target
2019-10-24 17:38:15 -07:00
mpilman a79757a788 Fix compiler errors on Catalina
Fixes #2263
2019-10-21 11:15:37 -07:00
Meng Xu d0147e5e5d Merge branch 'release-6.2' into mengxu/merge-release620-to-master-v3
Resolved Conflicts:
	documentation/sphinx/source/release-notes.rst
	fdbserver/DataDistribution.actor.cpp
	versions.target
2019-10-02 13:22:56 -07:00
Andrew Noyes c967fa55cc Add USE_UBSAN cmake option 2019-09-26 13:44:28 -07:00
Alvin Moore f13039e6d4 Switched to using CMAKE_CXX_STANDARD for setting c++17 2019-09-24 11:22:24 -07:00
Alvin Moore 9ae1125a85 Only enable `no-register ` option if ccache is enabled because of ccache problem 2019-09-24 11:22:24 -07:00
Alvin Moore c447d5999d Added support to allow USE_LIBCXX to be enabled via environmental variable
Changed use of '-std=c++17)' to setting the CXX standard via CMAKE_CXX_STANDARD keyword
Added c++ library for linking
Added compilation options to ignore certain command parameters when using CCACHE due to ccache bug
2019-09-24 11:22:24 -07:00