diff options
author | gregory guy <[email protected]> | 2020-01-02 11:47:18 +0100 |
---|---|---|
committer | gregory guy <[email protected]> | 2020-01-03 13:01:01 +0100 |
commit | 671faf252fe4100120aa86f1e144ae5c93b26900 (patch) | |
tree | 0c027abe72ab71c1374bdea40ce151cf7ab75672 | |
parent | 24c97b77f50f29d9296a005e9f3f5ba0a38319b1 (diff) | |
download | tqca-671faf252fe4100120aa86f1e144ae5c93b26900.tar.gz tqca-671faf252fe4100120aa86f1e144ae5c93b26900.zip |
Conversion to the cmake building system.
Signed-off-by: gregory guy <[email protected]>
-rw-r--r-- | CMakeLists.txt | 69 | ||||
-rw-r--r-- | ConfigureChecks.cmake | 37 | ||||
-rw-r--r-- | config.h.cmake | 8 | ||||
-rw-r--r-- | src/CMakeLists.txt | 50 | ||||
-rw-r--r-- | src/tqca.cpp (renamed from src/qca.cpp) | 28 | ||||
-rw-r--r-- | src/tqca.h (renamed from src/qca.h) | 12 | ||||
-rw-r--r-- | src/tqca.pc.cmake | 12 | ||||
-rw-r--r-- | src/tqcaprovider.h (renamed from src/qcaprovider.h) | 12 |
8 files changed, 203 insertions, 25 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..ba877a9 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,69 @@ +############################################ +# # +# Improvements and feedbacks are welcome # +# # +# This file is released under GPL >= 3 # +# # +############################################ + + +cmake_minimum_required( VERSION 2.8 ) + + +#### general package setup + +project( tqca ) +set( VERSION R14.1.0 ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckFunctionExists ) +include( CheckSymbolExists ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) + + +#### include our cmake modules + +set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) +include( TDEMacros ) + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + + +##### optional stuff + +option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) +option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) + + +###### global compiler settings + +add_definitions( -DHAVE_CONFIG_H ) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" ) + + +##### source directories + +add_subdirectory( src ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake new file mode 100644 index 0000000..fb41aa9 --- /dev/null +++ b/ConfigureChecks.cmake @@ -0,0 +1,37 @@ +########################################### +# # +# Improvements and feedback are welcome # +# # +# This file is released under GPL >= 3 # +# # +########################################### + +# required stuff +tde_setup_architecture_flags( ) + +include(TestBigEndian) +test_big_endian(WORDS_BIGENDIAN) + +tde_setup_largefiles( ) +find_package( TQt ) +find_package( TDE ) + + +##### check for gcc visibility support + +if( WITH_GCC_VISIBILITY ) + tde_setup_gcc_visibility( ) +endif( WITH_GCC_VISIBILITY ) + + +##### look for tqt3 headers path + +execute_process( + COMMAND ${PKG_CONFIG_EXECUTABLE} + --variable=includedir tqt-mt + OUTPUT_VARIABLE TQT_HEADERS_DIRS + OUTPUT_STRIP_TRAILING_WHITESPACE +) +if( TQT_HEADER_DIRS ) + set( TQT_HEADERS_DIRS "${TQT_HEADERS_DIRS}" ) +endif() diff --git a/config.h.cmake b/config.h.cmake new file mode 100644 index 0000000..61ede3a --- /dev/null +++ b/config.h.cmake @@ -0,0 +1,8 @@ +#define VERSION "@VERSION@" + +// Defined if you have fvisibility and fvisibility-inlines-hidden support. +#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#cmakedefine WORDS_BIGENDIAN @WORDS_BIGENDIAN@ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 0000000..1cf2db8 --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,50 @@ +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR} + ${CMAKE_SOURCE_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} + ${TDE_LIB_DIR} +) + + +##### tqca (shared) + +tde_add_library( ${PROJECT_NAME} SHARED AUTOMOC + + SOURCES + tqca.cpp + LINK + tdecore-shared + + VERSION 1.0.0 + + DESTINATION ${LIB_INSTALL_DIR} +) + + +##### headers + +install( + FILES ${PROJECT_NAME}.h + DESTINATION ${TQT_HEADERS_DIRS} +) + + +##### other data + +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_EXEC_PREFIX ${EXEC_INSTALL_PREFIX} ) +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" TQT_HEADERS_DIRS ${TQT_HEADERS_DIRS} ) +string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" PC_LIB_DIR ${LIB_INSTALL_DIR} ) + +configure_file( ${PROJECT_NAME}.pc.cmake ${PROJECT_NAME}.pc @ONLY ) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc + DESTINATION ${PKGCONFIG_INSTALL_DIR} +) diff --git a/src/qca.cpp b/src/tqca.cpp index b54671e..bd17094 100644 --- a/src/qca.cpp +++ b/src/tqca.cpp @@ -18,19 +18,19 @@ * */ -#include"qca.h" - -#include<tqptrlist.h> -#include<tqdir.h> -#include<tqfileinfo.h> -#include<tqstringlist.h> -#include<tqlibrary.h> -#include<tqtimer.h> -#include<tqhostaddress.h> -#include<tqapplication.h> -#include<tqguardedptr.h> -#include<stdlib.h> -#include"qcaprovider.h" +#include "tqca.h" +#include "tqcaprovider.h" + +#include <tqptrlist.h> +#include <tqdir.h> +#include <tqfileinfo.h> +#include <tqstringlist.h> +#include <tqlibrary.h> +#include <tqtimer.h> +#include <tqhostaddress.h> +#include <tqapplication.h> +#include <tqguardedptr.h> +#include <cstdlib> #if defined(Q_OS_WIN32) #define PLUGIN_EXT "dll" @@ -1477,3 +1477,5 @@ TQByteArray SASL::readOutgoing() d->outbuf.resize(0); return a; } + +#include "tqca.moc" @@ -21,12 +21,12 @@ #ifndef TQCA_H #define TQCA_H -#include<tqstring.h> -#include<tqcstring.h> -#include<tqdatetime.h> -#include<tqmap.h> -#include<tqptrlist.h> -#include<tqobject.h> +#include <tqstring.h> +#include <tqcstring.h> +#include <tqdatetime.h> +#include <tqmap.h> +#include <tqptrlist.h> +#include <tqobject.h> #ifdef Q_OS_WIN32 # ifndef TQCA_STATIC diff --git a/src/tqca.pc.cmake b/src/tqca.pc.cmake new file mode 100644 index 0000000..1ba2793 --- /dev/null +++ b/src/tqca.pc.cmake @@ -0,0 +1,12 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=@PC_EXEC_PREFIX@ +libdir=@PC_LIB_DIR@ +includedir=@TQT_HEADERS_DIRS@ + +Name: @PROJECT_NAME@ +Description: TQt Cryptographic Architecture. +URL: https://mirror.git.trinitydesktop.org/gitea/TDE/tqca.git +Requires: +Version: 1.0.0 +Libs: -L${libdir} -l@PROJECT_NAME@ +Cflags: -I${includedir} diff --git a/src/qcaprovider.h b/src/tqcaprovider.h index 198b606..27ed422 100644 --- a/src/qcaprovider.h +++ b/src/tqcaprovider.h @@ -21,12 +21,12 @@ #ifndef TQCAPROVIDER_H #define TQCAPROVIDER_H -#include<tqglobal.h> -#include<tqstring.h> -#include<tqdatetime.h> -#include<tqobject.h> -#include<tqhostaddress.h> -#include"qca.h" +#include <tqglobal.h> +#include <tqstring.h> +#include <tqdatetime.h> +#include <tqobject.h> +#include <tqhostaddress.h> +#include "tqca.h" #define TQCA_PLUGIN_VERSION 1 |