• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / tarantool / 15253971856

26 May 2025 12:29PM UTC coverage: 86.086% (-0.008%) from 86.094%
15253971856

push

github

Buristan
cmake: fix LTO build on Fedora

This patch is a follow-up to the commit
25af976f5 ("build: support cmake 4.0").
Since version 3.4, CMake doesn't add flags to export symbols from
executables without the ENABLE_EXPORTS target property, see CMP0065 [1]
for details.  Without this property, some unit C tests produce build
warnings with LTO optimization enabled (for example, on Fedora 39):

NO_WRAP
```
[ 72%] Linking CXX executable luaT_tuple_new.test
In function ‘rmean_collect’,
    inlined from ‘txn_complete_success’ at src/box/txn.c:836:2,
    inlined from ‘txn_limbo_complete’ at src/box/txn_limbo.c:205:3:
src/lib/core/rmean.c:65:9: error: ‘__atomic_add_fetch_8’ writing 8 bytes into a region of size 0 overflows the destination [-Werror=stringop-overflow=]
   65 |         __atomic_add_fetch(&rmean->stats[name].value[0], value, __ATOMIC_RELAXED);
      |         ^
In function ‘txn_limbo_complete’:
lto1: note: destination object is likely at address zero
```
NO_WRAP

The real reason should be investigated in the scope of #11517. The
compilation warning may be suppressed, but it may also mask the actual
problems in the future tests. The CMP0065 is removed from CMake version
4.0 [2]. Thus, this patch fixes the behaviour by setting the property
`ENABLE_EXPORTS` for unit tests directly.

[1]: https://cmake.org/cmake/help/latest/policy/CMP0065.html
[2]: https://cmake.org/cmake/help/latest/manual/cmake-policies.7.html#policies-introduced-by-cmake-3-4-removed-by-cmake-4-0

NO_DOC=build
NO_TEST=build
NO_CHANGELOG=build

(cherry picked from commit 2bde9262e)

63541 of 114904 branches covered (55.3%)

94475 of 109745 relevant lines covered (86.09%)

1913920.65 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

95.85
/src/box/lua/init.c


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc