Commit Graph

186 Commits

Author SHA1 Message Date
Fabrice Fontaine
6b33250c59 build/CMakeLists.txt: enable C language
Detection of libatomic is broken since version 2.47.0 and
b7f0d87daf
because C language is not enabled anymore:

-- Looking for __atomic_fetch_add_4 in atomic
-- Looking for __atomic_fetch_add_4 in atomic - not found
CMake Error at cmake_modules/CheckAtomic.cmake:59 (message):
  Host compiler appears to require libatomic, but cannot find it.
Call Stack (most recent call first):
  CMakeLists.txt:54 (include)

Indeed if C language is not enabled, the test will be run with the C++
compiler resulting in the following error:

Building CXX object CMakeFiles/cmTC_03d01.dir/CheckFunctionExists.cxx.o
        /home/fabrice/buildroot/output/host/bin/x86_64-linux-g++ --sysroot=/home/fabrice/buildroot/output/host/x86_64-buildroot-linux-gnu/sysroot   -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O1 -g0 -D_FORTIFY_SOURCE=2 -DCHECK_FUNCTION_EXISTS=__atomic_fetch_add_4  -DNDEBUG -o CMakeFiles/cmTC_03d01.dir/CheckFunctionExists.cxx.o -c /home/fabrice/buildroot/output/build/i2pd-2.49.0/build/CMakeFiles/CMakeScratch/TryCompile-NApnv9/CheckFunctionExists.cxx
        <command-line>: error: new declaration ‘char __atomic_fetch_add_4()’ ambiguates built-in declaration ‘unsigned int __atomic_fetch_add_4(volatile void*, unsigned int, int)’ [-fpermissive]

whereas with a C compiler, we'll get:

Building C object CMakeFiles/cmTC_7e47b.dir/CheckFunctionExists.c.o
        /home/fabrice/buildroot/output/host/bin/x86_64-linux-gcc --sysroot=/home/fabrice/buildroot/output/host/x86_64-buildroot-linux-gnu/sysroot   -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O1 -g0 -D_FORTIFY_SOURCE=2 -DCHECK_FUNCTION_EXISTS=__atomic_fetch_add_4  -DNDEBUG -o CMakeFiles/cmTC_7e47b.dir/CheckFunctionExists.c.o -c /home/fabrice/buildroot/output/build/i2pd-2.49.0/build/CMakeFiles/CMakeScratch/TryCompile-e0zFMG/CheckFunctionExists.c
        <command-line>: warning: conflicting types for built-in function ‘__atomic_fetch_add_4’; expected ‘unsigned int(volatile void *, unsigned int,  int)’ [-Wbuiltin-declaration-mismatch]

Fix #1908

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2023-11-12 10:29:24 +00:00
Vort
0a519d8072 Fix MSVC compilation for std::max 2023-10-15 18:08:15 +03:00
hfsfox
0cf656cd76
Add Haiku OS support (#1970) 2023-09-28 22:30:38 +03:00
R4SAS
7b6aa41ca8
CPU: remove AVX code, switch to __builtin for AES detection (#1959)
* [cpu] remove avx detect and code blocks, try to switch to __builtin
* [cpu] use __builtin_* only on x86 systems
* [cpu] perform check in separate function
* [cpu] set AES definition on MSVC
* update x86 and aes support checks at compile time
* [cmake] update comment about AES on MSVC
2023-08-31 19:52:51 +03:00
r4sas
a2726cf206
[cmake] print commit-based version if option is used
Signed-off-by: r4sas <r4sas@i2pmail.org>
2023-05-23 00:44:46 +03:00
R4SAS
e96f0bfb14
[msvc] fix warnings, revert cmake boost libs linking list
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2023-03-13 18:34:45 +00:00
R4SAS
8677cd54bd
[cmake] win32: do not use static boost libs without WITH_STATIC
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2023-03-12 21:41:20 +00:00
R4SAS
b6d1d8117b
[GHA] Windows MSVC workflow (#1904) 2023-03-10 04:32:07 +03:00
R4SAS
0a8da6bc2f
[cmake] msvc build revision
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2023-03-08 14:41:29 +03:00
Vort
231c02c058 Make Win32NetState compatible with MSVC 2023-03-01 22:41:31 +02:00
Vort
a199084c99 Add MSVC support to CMake build 2023-03-01 08:52:40 +02:00
R4SAS
b7f0d87daf
GHA and Cmake changes (#1888)
Done with Vort's (https://github.com/Vort) cooperation

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2023-02-26 23:38:23 +03:00
barracuda156
00c75a7afa CMakeLists.txt: update comment re Boost and atomics on PPC 2023-02-15 18:16:03 +00:00
barracuda156
aa5e6400e4 CMakeLists: use a fix for atomics on macOS PPC, not PPC in general 2022-11-26 06:35:28 +08:00
barracuda156
61bcfebcc8 Add CMake support for tests 2022-11-26 06:32:56 +08:00
R4SAS
8df4082d6f
[cmake] Use std::atomic on PowerPC inside boost (#1726)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-11-20 08:40:03 +03:00
orignal
2470ba76f0 fixed cmake build 2022-08-28 07:15:02 -04:00
orignal
d32475440a fixed cmake build 2022-08-28 06:58:50 -04:00
R4SAS
3a5295dbb9
[cmake] remove unnecessary target link
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-06-21 04:53:28 +03:00
R4SAS
4d59df9f59
[cmake] add support of getting version from git (as in makefiles)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-06-21 03:03:35 +03:00
R4SAS
9b2ac4349e [cmake] use Threads::Threads (closes #1735)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-05-31 21:59:28 +03:00
R4SAS
9c87fe79ea
[openssl] suppress deprecation messages
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-05-24 15:06:01 +03:00
R4SAS
70dca81c40 dropped MESHNET build option
Dropping MESHNET build option due to lack of usage. That change won't
affect on usage with currently supported Yggdrasil network.

Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-03-24 01:36:12 +03:00
R4SAS
dceb0fb8c5
[cmake] add warning about MESHNET option
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-16 11:39:09 +03:00
R4SAS
05c1856389
[cmake] do not use CMAKE_OSX_ARCHITECTURES for check
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-14 23:53:55 +03:00
R4SAS
dc5cba60d1
[cmake] add MAC_OSX define for Mac
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-14 22:58:56 +03:00
R4SAS
a272a2cb7e
[cmake] update min version, drop PCH
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 07:23:33 +03:00
R4SAS
43b990afe6
[cmake] disable deprecation warning when OpenSSL 3 is used
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-11 07:00:30 +03:00
R4SAS
31242401e5 [cmake] update TargetArch.cmake (#1724)
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2022-02-02 06:07:01 +03:00
r4sas
ff0e23d2c4
[cmake] use GNUInstallDirs for libraries destination path (#1672)
Signed-off-by: r4sas <r4sas@i2pmail.org>
2021-07-02 16:43:41 +00:00
R4SAS
9fb8e8a582
[cmake] build translations as library
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-06-26 23:59:34 +03:00
R4SAS
0292227a6b
[cmake] switch to glob instead filling sources list
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-26 13:15:17 +03:00
R4SAS
ebce1e34d8
[i18n] enable Ukrainian in source
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-26 12:56:47 +03:00
R4SAS
919bf4e144
[i18n] add cmake build
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2021-05-23 15:39:29 +03:00
R4SAS
62cd9fffa3
Automate AES-NI and AVX detection on runtime, make it default on x86-based systems (#1578)
Rework CPU extensions detection code and build with AES-NI and AVX support by default
2020-11-15 01:31:20 +03:00
orignal
57d6c7a3b3 Added TunnelConfig.cpp. Removed CryptoWroker.h 2020-10-22 21:06:23 -04:00
orignal
faae2709d9 removed NTCP 2020-10-03 21:58:20 -04:00
R4SAS
db6a0e6ad9
[cmake] remove windows build support (#1517)
Removes support for MSVC, MSYS, MinGW and included NSIS installer in cmake
2020-05-20 12:17:54 +03:00
R4SAS
a9436aa9af drop i2lua
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-04-03 14:31:38 +03:00
R4SAS
dd8200e8b0
cleanup websocks
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-03-12 03:50:21 +03:00
R4SAS
2f56547d5f
Merge pull request #1477 from PurpleI2P/drop-websockets
drop websockets support
2020-03-11 12:37:38 +00:00
R4SAS
2ac2da41cf
cmake: fix else statement 2020-02-28 23:28:41 +03:00
R4SAS
ed574f9d79
use C++17 if available when configuring with cmake 2020-02-28 23:05:26 +03:00
R4SAS
bca0809918
cleanup removed websockets funtions
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-02-28 18:48:43 +03:00
R4SAS
00db527377
drop websockets support
Signed-off-by: R4SAS <r4sas@i2pmail.org>
2020-02-27 14:58:06 +03:00
orignal
f651baab25 ECIESX25519AEADRatchetSession added 2020-01-15 15:13:43 -05:00
orignal
29f0e10411 Elligator added 2019-12-04 15:37:24 -05:00
Alexey Korepanov
7147a3694c link libi2pd to boost and zlib 2019-06-01 12:57:09 +01:00
orignal
39400fd381 move key blinding code from LeaseSet.cpp to Blinding.cpp 2019-05-14 11:42:25 -04:00
l-n-s
1db4076bbd CMake: bump version of ZLib 2018-12-19 12:19:30 -05:00