Update the cmake build system, see issue #2 #3

Manually merged
SlavekB merged 1 commits from feat/cmakeUpdate into master 5 years ago
Ghost commented 5 years ago

Add a man page taken from the Debian packaging system.

Add a man page taken from the Debian packaging system.
Ghost added the PR/wip label 5 years ago
Ghost added the PR/rfc label 5 years ago
Ghost removed the PR/rfc PR/wip labels 5 years ago
Ghost changed title from WIP:Update the cmake build system, see issue #2 to Update the cmake build system, see issue #2 5 years ago
Ghost commented 5 years ago
Poster

A man page, a README and an INSTALL file have been added.

Openvpn and cisco-decrypt (vpnc) ought to be present at run time.
Strongswan and pptp should be present as well.

A man page, a README and an INSTALL file have been added. Openvpn and cisco-decrypt (vpnc) ought to be present at run time. Strongswan and pptp should be present as well.
SlavekB reviewed 5 years ago
SlavekB left a comment
Owner

It looks good. I have some small comments here.

It looks good. I have some small comments here.
CMakeLists.txt Outdated
option( BUILD_ALL "Build all" OFF )
option( BUILD_DOC "Build documentation" ${BUILD_ALL} )
option( BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL} )
option( WITH_OPENVPN "Build Openvpn plugin" ${BUILD_ALL} )
Owner

Because VPN plugins are selected as WITH_* options, they should probably be in the optional stuff and using WITH_ALL_OPTIONS instead of BUILD_ALL.

Because VPN plugins are selected as `WITH_*` options, they should probably be in the *optional stuff* and using `WITH_ALL_OPTIONS` instead of `BUILD_ALL`.
Ghost commented 5 years ago
Poster

Good catch, I'll change that.

Good catch, I'll change that.
CMakeLists.txt Outdated
add_definitions(
-DHAVE_CONFIG_H
)
add_definitions( -DHAVE_CONFIG_H -UTQT_NO_ASCII_CAST )
Owner

Good idea to move this definition to a common level. In any case, I will try to prepare a patch to fix the need for this definition.

Good idea to move this definition to a common level. In any case, I will try to prepare a patch to fix the need for this definition.
Ghost commented 5 years ago
Poster

????

????
Ghost commented 5 years ago
Poster

great!

great!
Owner

The patch is already ready. I'll wait for your adjustments and then push it.

The patch is already ready. I'll wait for your adjustments and then push it.
if( WITH_OPENVPN )
find_program( OPENVPN_EXEC openvpn )
if( NOT OPENVPN_EXEC )
tde_message_fatal( "openvpn support has been requested but openvpn was not found on your system" )
Owner

If the values that were found, we will not use them in the code, then probably do not need to end at fatal. For example, we could use the value in the code as the default path to search for a binary while the application is running. We need to discuss this and find an consensus.

If the values that were found, we will not use them in the code, then probably do not need to end at *fatal*. For example, we could use the value in the code as the default path to search for a binary while the application is running. We need to discuss this and find an consensus.
Ghost commented 5 years ago
Poster

They're not needed to build.
Instead of the macro tde_message_fatal(), we can use just message() to warn the packager or just remove that, any solutions will suit me just fine.

For sure It's better to have the search for openvpn and cisco-decrypt at runtime, but It's rather unlikely that someone will remove the openvpn package or the vpnc package if he intend to use those plugins.

They're not needed to build. Instead of the *macro tde_message_fatal()*, we can use just *message()* to warn the packager or just remove that, any solutions will suit me just fine. For sure It's better to have the search for openvpn and cisco-decrypt at runtime, but It's rather unlikely that someone will remove the openvpn package or the vpnc package if he intend to use those plugins.
SlavekB reviewed 5 years ago
SlavekB left a comment
Owner

Added comment about nm-util.

Added comment about nm-util.
##### check for libnm-util
pkg_search_module( NM_UTIL libnm-util )
Owner

I tested completely remove the nm-util detection and remove the use of ${NM_UTIL_INCLUDE_DIRS} from all CMakeLists.txt and the build was OK. It seems that nm-util is no longer needed for tdenetworkmanager.

I tested completely remove the nm-util detection and remove the use of `${NM_UTIL_INCLUDE_DIRS}` from all `CMakeLists.txt` and the build was OK. It seems that nm-util is no longer needed for tdenetworkmanager.
Ghost commented 5 years ago
Poster

WITH_GCC_VISIBILITY is OFF by default I can't build with.

WITH_GCC_VISIBILITY is OFF by default I can't build with.
Owner

Thank you for the reminder, I'll look at it and prepare a patch.

Thank you for the reminder, I'll look at it and prepare a patch.
Owner

Added patches for TQT_NO_ASCII_CAST and WITH_GCC_VISIBILITY.

Please, you can test it.

Added patches for TQT_NO_ASCII_CAST and WITH_GCC_VISIBILITY. Please, you can test it.
Ghost commented 5 years ago
Poster

Build fine here. you should merge.

Build fine here. you should merge.
SlavekB approved these changes 5 years ago
SlavekB left a comment
Owner

Everything looks fine – good work Greg!

Everything looks fine – good work Greg!
SlavekB closed this pull request 5 years ago
SlavekB closed this pull request 5 years ago
SlavekB deleted branch feat/cmakeUpdate 5 years ago
SlavekB added this to the R14.0.7 release milestone 5 years ago
The pull request has been manually merged as 1c40516d66.
Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

No dependencies set.

Reference: TDE/tdenetworkmanager#3
Loading…
There is no content yet.