31 Commits

Author SHA1 Message Date
Markus Pilman
d35445a868 enforce include modularization in cmake 2022-06-23 14:37:35 -06:00
Xiaoxi Wang
61e374f301 fix cmake bug when use gcc 2022-03-30 23:21:22 -07:00
Andrew Noyes
88a439e156
Fix typo from pull request #6698 (#6729) 2022-03-30 13:40:57 -07:00
Andrew Noyes
bbfaddc963
Don't instrument fdbmonitor with thread sanitizer (#6698)
We don't compile fdbmonitor with thread sanitizer instrumentation, since this
appears to change its behavior (it no longer seems to restart killed
processes). fdbmonitor is single-threaded anyway.
2022-03-28 14:06:51 -07:00
zhenfeng yang
847cff72b7
Add a target to generate profile (#6396)
add a target to generate profile
2022-02-28 17:00:30 -06:00
sfc-gh-tclinkenbeard
5b8f4d9be1 Move SimpleIni.h to fdbclient 2022-02-07 13:31:04 -08:00
Markus Pilman
438be4edd5 Don't overwrite sandbox config on recompile 2020-08-12 14:32:31 -06:00
A.J. Beamon
74c11b4c9a
Merge pull request #3262 from apple/release-6.2
Merge release-6.2 into release-6.3
2020-05-28 13:43:46 -07:00
A.J. Beamon
382666d21e Permissions were wrong on installed files. A missing DESTINATION for fdbserver caused the binary to be missing. 2020-05-28 10:33:09 -07:00
A.J. Beamon
b3c269351a
Merge pull request #3252 from apple/release-6.2
Merge release-6.2 into release-6.3
2020-05-27 19:13:24 -07:00
A.J. Beamon
96f396ec7f Make sure to build the binary stripping targets when packaging stripped binaries 2020-05-27 16:40:07 -07:00
A.J. Beamon
d6be580319 Merge branch 'release-6.2' into merge-release-6.2-into-release-6.3
# Conflicts:
#	documentation/sphinx/source/command-line-interface.rst
#	documentation/sphinx/source/release-notes.rst
#	fdbcli/fdbcli.actor.cpp
2020-05-27 11:42:27 -07:00
A.J. Beamon
2f9cd383ea Use stripped executables in packages when not building with debug symbols. 2020-05-21 13:39:55 -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
Alex Miller
98aaa01134
Use PRIVATE instead of PUBLIC 2019-09-16 19:51:41 -07:00
Alex Miller
44f1cd6219 Fix some CMake build issues
1. `-isystem ../flow/-lpthreads` was appearing as an include flag

    Due to an apparent mistake of specifying CMAKE_THREAD_LIBS_INIT
    as a system include.  The correct way to do this is to link
    against Threads::Threads, which was already done below.

2. fdbmonitor wouldn't link due to missing pthread_once

    So it also needs to link against Threads::Threads
2019-09-16 18:43:38 -07:00
Alvin Moore
52f1ef22e7 Added support for stripping symbols from fdbmonitor 2019-04-05 01:38:07 -07:00
Andrew Noyes
5e63efd385 Fix typo in comment
Co-Authored-By: mpilman <markus@pilman.ch>
2019-03-20 12:18:31 -07:00
mpilman
a0fe00fa8d Add cmake targets to execute local dev instance 2019-03-20 12:18:31 -07:00
mpilman
e8624efb3b several minor improvements 2019-03-07 16:49:29 -08:00
mpilman
2537f26de6 First implementaion of more user-friendly cpack
Up unto here this code is only very rudiemantery tested.

This is a firest attempt of making cpack more user-friendly.
The basic idea is to generate a component for package type so
that we can have different paths depending on whether we build
an RPM, a DEB, a TGZ, or a MacOS installer. The cpack package
config file will then chose the correct components to use.

In a later point this should make it possible to build these
with `make packages` and the ugly iteration with calling cmake
between each package would be obsolete. While this solution is
a bit more bloated, it is also much more flexible and it will be
much easier to use.

Another benefit is, that this will get rid of all warnings during
a cpack run
2019-03-07 16:49:29 -08:00
mpilman
4a4af6fb2c Make cmake build fail if old build system was used
This changes makes a cmake build check for an existing
versions.h file in the source directory before it builds
anything else. If it finds it it will fail the build.

This is to prevent confusion when someone tries to use cmake
on a source directory where the old build system was used
before (as this is not supported).
2019-03-06 13:48:18 -08:00
mpilman
9b14aeb156 Tell cmake not to link/install on ide build 2019-02-19 15:16:59 -08:00
mpilman
aeccec0ef8 Fix merge conflicts 2019-02-07 18:09:10 -08:00
Andrew Noyes
935f8a92f4 Install fdbmonitor without lib suffix for cmake 2019-01-31 09:06:49 -08:00
Markus Pilman
ab37648037
Only link librt on linux fdbmonitor/CMakeLists.txt
Co-Authored-By: atn34 <anoyes34@gmail.com>
2019-01-28 21:44:48 -08:00
Andrew Noyes
8fc88306cf Link librt into fdbmonitor 2019-01-28 17:05:29 -08:00
Andrew Noyes
c167ed5457 Don't link flow into fdbmonitor for cmake
It seems that fdbmonitor is not meant to depend on flow, since it
redefines symbols such as `joinPath`
2019-01-24 09:59:38 -08:00
Alex Miller
217fb4e6cb Fix the CMake build.
This change was originally authored by @mpilman as part of #1005, but is
something that can instead be merged quickly and easily.
2019-01-10 14:33:09 -08:00
Markus Pilman
df0f491c29 Some more improvements to the build and preparations for packaging 2018-12-13 15:04:13 -08:00
Markus Pilman
c06bb33730 CMake compiles all binaries except for bindings 2018-12-13 14:15:44 -08:00