- 24 Mar, 2021 1 commit
-
-
Andrea Pappacoda authored
...fix RapidJSON dependency, remove features from CMake I've now implemented in Meson all the remaining features that were in CMake, like Cppcheck and Doxygen documentation. I've also removed almost all the non-essential features from CMake, like building examples, documentation, code coverage, the install target, Cppcheck, and tarball generation. This should help with maintainability, while preserving testability, following @kiplingw and @dennisjenkins75 main concerns. Cppcheck is not ran by default, but it is a build target; you can run it with `meson compile -C builddir cppcheck`. I've also made some little fixes and tweaks: Fixed RapidJSON dependency, as it was previously declared only as a dependency of the run_rest_description example, while used in include/pistache/thirdparty/serializer/rapidjson.h. Updated CMakeLists, replacing the old Include(Dart) with the newer Include(CTest), and also adding messaging suggesting the user to install RapidJSON and GoogleTest on their system rather than building them from source. Fixed a "small" issue in meson.build, replacing add_global_arguments with add_project_arguments, since the former can't be used in subprojects and can cause build failures for users.
-
- 18 Mar, 2021 1 commit
-
-
Andrea Pappacoda authored
Submodules get included in the source tarball generated by meson dist, making dpkg-source throw a lot of warnings. Using FetchContent instead of submodules has a few advantages: Solves packaging warnings Faster git clone External dependencies get downloaded only if needed
-
- 16 Mar, 2021 3 commits
-
-
Andrea Pappacoda authored
Now the package is built with Meson. I've updated the debhelper-compat version to 12 since it provides good support for Meson, I've removed the lintian overrides (useless since the migration to Docusaurus), and obviously updated debian/rules to use Meson for building the package and creating the tarball. This is not perfect though, as I had to use an ugly hack for the tarball since Meson does not add .github to the archive (mesonbuild/meson#8541). Also, it is not possible to run the tests with valgrind since debhelper 12 uses ninja test for testing (while it should use meson test, so that one could add --wrap=valgrind). This behavior is corrected in debhelper 13, but it is too recent and not available in Ubuntu 20.04. It would be also possible to completely override dh_auto_test, but I don't think that's worth it. autopkgtest does not report any error in Ubuntu Focal, so I think that everything is ok :)
-
Tachi authored
-
Tachi authored
-
- 14 Mar, 2021 5 commits
-
-
Andrea Pappacoda authored
As always, I forgot about something.
-
Andrea Pappacoda authored
Upgraded to Ubuntu Focal, added Meson builds, added newer compilers
-
Andrea Pappacoda authored
The problem was probably caused by the absence of -lgcov as a linker option. With this I'm replacing -fprofile-arcs -ftest-coverage and the linker options with --coverage, that passes all the correct flags to compiler and linker.
-
Andrea Pappacoda authored
Pistache now supports the Meson build system! It is required to use Meson >=0.57 because previous versions can't read files, and it wouldn't be possible to parse version.txt to set the correct parameters in the .pc files and the shared library. Such a recent version allows the users to switch between the system-provided library and the one they have in the subprojects folder without even having to specify the fallback kwarg in dependency(). Since Meson provides builtin options for enabling code coverage and PIC in static libraries there's no need for the PISTACHE_PIC option and the "Profile target" mentioned by dennisjenkins75 in #840, as they can be controlled with b_staticpic and b_coverage, respectively. The cpp_std option is also set to c++17 even if the current minimun standard is C++14 because of #859. If you don't know what Meson is, I highly recommend you to check it out.
-
Andrea Pappacoda authored
The function was identical to parse_RFC_1123(), and the worst thing is that tests with CMake weren't failing, while running them with Meson revealed the issue.
-
- 12 Feb, 2021 1 commit
-
-
Ivan Kizenko authored
"will additional functions" changing to "with additional functions"
-
- 08 Feb, 2021 7 commits
- 06 Feb, 2021 3 commits
- 05 Feb, 2021 1 commit
-
-
Tachi authored
-
- 20 Jan, 2021 2 commits
-
-
Kip authored
listener: add CloseOnExec option
-
Kip Warner authored
-
- 19 Jan, 2021 1 commit
-
-
Mateusz Szychowski (Muttley) authored
allows to set SOCK_CLOEXEC option for creating sockets can be used to avoid leaking file descriptors to child processes with fork()
-
- 14 Jan, 2021 1 commit
-
-
Kip authored
-
- 10 Jan, 2021 1 commit
-
-
Kip authored
Make fPIC optional
-
- 08 Jan, 2021 1 commit
-
-
Kip authored
-
- 07 Jan, 2021 7 commits
- 30 Dec, 2020 2 commits
-
-
Uilian Ries authored
Signed-off-by: Uilian Ries <uilianries@gmail.com>
-
Uilian Ries authored
Signed-off-by: Uilian Ries <uilianries@gmail.com>
-
- 29 Dec, 2020 1 commit
-
-
Kip authored
Modernize CMakeLists.txt
-
- 28 Dec, 2020 1 commit
-
-
Kip authored
-
- 27 Dec, 2020 1 commit
-
-
Tachi authored
WIth this I'm trying to fix some of the issues pointed out in #827. Changes: Use add_compile_options() instead of modifying CMAKE_CXX_FLAGS. Use -Og instead of -O0 (from https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html : [-Og] is a better choice than -O0 for producing debuggable code because some compiler passes that collect debug information are disabled at -O0) Fix LTO check (previously it would fail because it checked only CMAKE_CXX_FLAGS. This didn't work when properly enabling LTO through CMAKE_INTERPROCEDURAL_OPTIMIZATION). I'm not sure if I modified it correctly since I don't really understand what that check is trying to do in the first place. Check for Clang or GCC when applying compiler specific flags. This changes require CMake 3.9 or higher, but I don't think this will cause any issues.
-