Add common tde_setup_gcc_visibility macro #17

Samengevoegd
SlavekB heeft 1 commits samengevoegd van feat/add-test-gcc-visibility naar master 5 jaren geleden
Eigenaar

In many modules built with CMake, a GCC visibility test is performed. In most, a simple test is performed to determine if the system is a UNIX-type. In tdebase, there is a more in-depth test that checks if tdelibs are built with GCC visibility. The comment also states that it would be good to add a test to see if TQt is built with GCC visibility.

In order not to have all these tests in each module, I put all tests into a common cmake module as tde_setup_gcc_visibility macro. Thanks to this, it will now be simple in each module:

if( WITH_GCC_VISIBILITY )
   tde_setup_gcc_visibility( )
endif( )

The tests in tde_setup_gcc_visibility macro are prepared so that the TQt and tdelibs tests are performed only when they are installed / detected. This allows to use macro not only in the usual modules, but also in tdelibs, and in the future in TQt.

In many modules built with CMake, a GCC visibility test is performed. In most, a simple test is performed to determine if the system is a UNIX-type. In tdebase, there is a more in-depth test that checks if tdelibs are built with GCC visibility. The comment also states that it would be good to add a test to see if TQt is built with GCC visibility. In order not to have all these tests in each module, I put all tests into a common cmake module as `tde_setup_gcc_visibility` macro. Thanks to this, it will now be simple in each module: ``` if( WITH_GCC_VISIBILITY ) tde_setup_gcc_visibility( ) endif( ) ``` The tests in `tde_setup_gcc_visibility` macro are prepared so that the TQt and tdelibs tests are performed only when they are installed / detected. This allows to use macro not only in the usual modules, but also in tdelibs, and in the future in TQt.
SlavekB voegde het PR/rfc label 5 jaren geleden toe
MicheleC heeft deze veranderingen 5 jaren geleden goedgekeurd
MicheleC heeft een reactie achtergelaten
Eigenaar

LGTM

LGTM
Eigenaar

before we push to cmake, let's try to build up to the base system with the modified macro.

before we push to cmake, let's try to build up to the base system with the modified macro.
Poster
Eigenaar

I have successfully completed the tests of building tdebase and tdelibs 😸

I have successfully completed the tests of building tdebase and tdelibs :smile_cat:
Eigenaar

Good enough then

Good enough then
Poster
Eigenaar

Note: Because for TQt is unable to identify by definitions or header files whether the build was performed with GCC visibility, the test checks to see if the private class methods are visible in exported library symbols.

Note: Because for TQt is unable to identify by definitions or header files whether the build was performed with GCC visibility, the test checks to see if the private class methods are visible in exported library symbols.
SlavekB verwijderde het PR/rfc label 5 jaren geleden
SlavekB heeft deze pull request gesloten 5 jaren geleden
SlavekB heeft 5 jaren geleden de branch feat/add-test-gcc-visibility verwijderd.
SlavekB heeft dit 5 jaren geleden aan de mijlpaal R14.0.6 release toegevoegd
De pull request is samengevoegd als b034c47597.
Log in om deel te nemen aan deze discussie.
Geen beoordelaars
Geen mijlpaal
Niet toegewezen
2 deelnemers
Notificaties
Vervaldatum

Geen vervaldatum ingesteld.

Afhankelijkheden

Geen afhankelijkheden ingesteld.

Referentie: TDE/tde-cmake#17
Laden…
Er is nog geen inhoud.