Add common tde_setup_gcc_visibility macro #17

Fusionnée
SlavekB a fusionné 1 révision(s) à partir de feat/add-test-gcc-visibility vers master il y a 5 ans
Propriétaire

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 a ajouté l'étiquette PR/rfc il y a 5 ans
MicheleC ces changements ont été approuvés il y a 5 ans
MicheleC laisser un commentaire
Propriétaire

LGTM

LGTM
Propriétaire

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.
Éditeur
Propriétaire

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

I have successfully completed the tests of building tdebase and tdelibs :smile_cat:
Propriétaire

Good enough then

Good enough then
Éditeur
Propriétaire

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 a supprimé l'étiquette PR/rfc il y a 5 ans
SlavekB a fermé cette pull request il y a 5 ans
SlavekB a supprimé la branche feat/add-test-gcc-visibility il y a 5 ans
SlavekB a ajouté cela au jalon R14.0.6 release il y a 5 ans
La demande d'ajout a été fusionnée en b034c47597.
Connectez-vous pour rejoindre cette conversation.
Aucune évaluation
Aucun jalon
Pas d'assignataires
2 participants
Notifications
Échéance

Aucune échéance n'a été définie.

Dépendances

No dependencies set.

Reference: TDE/tde-cmake#17
Chargement…
Il n'existe pas encore de contenu.