Browse Source

Conversion to the cmake building system.

Signed-off-by: gregory guy <gregory-tde@laposte.net>
pull/3/head
gregory guy 11 months ago
committed by Slávek Banko
parent
commit
a2c0e6c981
No known key found for this signature in database GPG Key ID: 608F5293A04BE668
6 changed files with 197 additions and 18 deletions
  1. +96
    -0
      CMakeLists.txt
  2. +56
    -0
      ConfigureChecks.cmake
  3. +11
    -0
      config.h.cmake
  4. +10
    -1
      qcaprovider.h
  5. +15
    -15
      tqca-tls.cpp
  6. +9
    -2
      tqca-tls.h

+ 96
- 0
CMakeLists.txt View File

@@ -0,0 +1,96 @@
############################################
# #
# Improvements and feedbacks are welcome #
# #
# This file is released under GPL >= 3 #
# #
############################################


cmake_minimum_required( VERSION 2.8 )


#### general package setup

project( tqca-tls )
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 -DOSSL_097 -DTQCA_PLUGIN )

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" )


##### write configure files

configure_file( config.h.cmake config.h @ONLY )


include_directories(
${CMAKE_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${TQT_INCLUDE_DIRS}
${OPENSSL_INCLUDE_DIR}
)

link_directories(
${TQT_LIBRARY_DIRS}
)


##### tqca-tls (shared)

tde_add_library( ${PROJECT_NAME} SHARED NO_LIBTOOL_FILE AUTOMOC

SOURCES
tqca-tls.cpp
LINK
${TQT_LIBRARIES}
${OPENSSL_LIBRARIES}

DESTINATION ${TQT_PLUGINS_CRYPTO_DIR}
)


##### write configure files

configure_file( config.h.cmake config.h @ONLY )

+ 56
- 0
ConfigureChecks.cmake View File

@@ -0,0 +1,56 @@
###########################################
# #
# Improvements and feedback are welcome #
# #
# This file is released under GPL >= 3 #
# #
###########################################

# required stuff
find_package( TQt )

tde_setup_architecture_flags( )

include(TestBigEndian)
test_big_endian(WORDS_BIGENDIAN)

tde_setup_largefiles( )


##### check for gcc visibility support

if( WITH_GCC_VISIBILITY )
tde_setup_gcc_visibility( )
endif( WITH_GCC_VISIBILITY )


##### check for openssl

find_package( OpenSSL )
if( NOT OPENSSL_FOUND )
tde_message_fatal( "OpenSSL is required but was not found on your system" )
endif()

##### look for tqt3 plugins path

execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE}
--variable=pluginsdir tqt-mt
OUTPUT_VARIABLE TQT_PLUGINS_DIR
OUTPUT_STRIP_TRAILING_WHITESPACE
)
if( TQT_PLUGINS_DIR )
set( TQT_PLUGINS_CRYPTO_DIR "${TQT_PLUGINS_DIR}/crypto" )
endif()


###### check for tqca

pkg_search_module( TQCA tqca )
if( TQCA_FOUND )
set( HAVE_TQCA 1 )
else()
message( STATUS " tqca was not found, built-in copy will be used" )
endif( )


+ 11
- 0
config.h.cmake View File

@@ -0,0 +1,11 @@
#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@

/* Defined if you have the tqca library */
#cmakedefine HAVE_TQCA 1

+ 10
- 1
qcaprovider.h View File

@@ -26,7 +26,16 @@
#include<tqdatetime.h>
#include<tqobject.h>
#include<tqhostaddress.h>
#include"qca.h"

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#ifdef HAVE_TQCA
#include <tqca.h>
#else
#include "qca.h"
#endif

#define TQCA_PLUGIN_VERSION 1



qca-tls.cpp → tqca-tls.cpp View File

@@ -18,21 +18,21 @@
*
*/

#include"qca-tls.h"
#include<tqregexp.h>
#include<openssl/sha.h>
#include<openssl/md5.h>
#include<openssl/evp.h>
#include<openssl/bio.h>
#include<openssl/pem.h>
#include<openssl/rsa.h>
#include<openssl/x509.h>
#include<openssl/x509v3.h>
#include<openssl/ssl.h>
#include<openssl/err.h>
#include<openssl/rand.h>
#include "tqca-tls.h"
#include <tqregexp.h>
#include <openssl/sha.h>
#include <openssl/md5.h>
#include <openssl/evp.h>
#include <openssl/bio.h>
#include <openssl/pem.h>
#include <openssl/rsa.h>
#include <openssl/x509.h>
#include <openssl/x509v3.h>
#include <openssl/ssl.h>
#include <openssl/err.h>
#include <openssl/rand.h>

#ifndef OSSL_097
#define NO_AES

qca-tls.h → tqca-tls.h View File

@@ -21,12 +21,19 @@
#ifndef TQCA_TLS_H
#define TQCA_TLS_H

#include"qcaprovider.h"
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#ifdef HAVE_TQCA
#include <tqcaprovider.h>
#else
#include "qcaprovider.h"
#endif

#ifdef TQCA_PLUGIN
TQCA_PLUGIN_EXPORT TQCAProvider *createProvider();
#else
TQCAProvider *createProviderTLS();
#endif

#endif

Loading…
Cancel
Save