Add common tde_setup_gcc_visibility macro #17

已合併
SlavekB 將 1 次提交從 feat/add-test-gcc-visibility 合併至 master 5 年前
擁有者

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 加入了 PR/rfc 標籤 5 年前
MicheleC 核可了這些變更 5 年前
MicheleC 留下了回應
擁有者

LGTM

LGTM
擁有者

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.
發布者
擁有者

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

I have successfully completed the tests of building tdebase and tdelibs :smile_cat:
擁有者

Good enough then

Good enough then
發布者
擁有者

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 移除了 PR/rfc 標籤 5 年前
SlavekB 關閉了這個合併請求 5 年前
SlavekB 刪除分支 feat/add-test-gcc-visibility 5 年前
SlavekB 新增到 R14.0.6 release 里程碑 5 年前
此合併請求已被合併為 b034c47597
登入 才能加入這對話。
沒有審核者
未選擇里程碑
沒有負責人
2 參與者
通知
截止日期

未設定截止日期。

先決條件

未設定先決條件。

參考: TDE/tde-cmake#17
載入中…
尚未有任何內容