Browse Source

* refactored cmake files

master
bergmann 5 years ago
parent
commit
cdd2c6e429
9 changed files with 41 additions and 27 deletions
  1. +9
    -10
      cmake/options.cmake
  2. +1
    -0
      cmake/options.h.in
  3. +1
    -0
      include/cpphibernate/config.h
  4. +24
    -9
      src/CMakeLists.txt
  5. +0
    -0
      src/cpphibernate/driver/mariadb/schema/field.cpp
  6. +0
    -0
      src/cpphibernate/driver/mariadb/schema/schema.cpp
  7. +0
    -0
      src/cpphibernate/driver/mariadb/schema/table.cpp
  8. +0
    -0
      src/cpphibernate/types.cpp
  9. +6
    -8
      test/CMakeLists.txt

+ 9
- 10
cmake/options.cmake View File

@@ -1,10 +1,9 @@
Option ( CPPHIBERNATE_BUILD_SHARED
"Build cpphibernate shared library"
OFF )
Option ( CPPHIBERNATE_DEBUG_OUTPUT
"Enable debug output"
OFF )

If ( CPPHIBERNATE_DEBUG_OUTPUT )
Add_Definitions ( -DCPPHIBERNATE_DEBUG )
EndIf ( )
Option ( CPPHIBERNATE_BUILD_SHARED
"Build cpphibernate shared library"
ON )
Option ( CPPHIBERNATE_INSTALL_DEV_FILES
"Install development files of cpphibernate"
ON )
Option ( CPPHIBERNATE_DEBUG
"Enable debug output"
OFF )

+ 1
- 0
cmake/options.h.in View File

@@ -0,0 +1 @@
#cmakedefine CPPHIBERNATE_DEBUG

+ 1
- 0
include/cpphibernate/config.h View File

@@ -2,6 +2,7 @@

#include <boost/hana.hpp>
#include <cpputils/mp/core.h>
#include <cpphibernate/options.h>

#ifdef CPPHIBERNATE_DEBUG
# include <cpputils/logging/global.h>


+ 24
- 9
src/CMakeLists.txt View File

@@ -18,18 +18,33 @@ Find_Package ( cppmariadb REQUIRED )

# Project: cpphibernate ###############################################################################

# Build
Project ( cpphibernate VERSION 1.0.0.0 LANGUAGES CXX )
Set ( CPPHIBERNATE_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../include )
Set ( CPPHIBERNATE_GENERATE_DIR ${CMAKE_CURRENT_BINARY_DIR}/generated )
File ( GLOB_RECURSE SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp )
Add_Library ( cpphibernate ${SOURCE_FILES} )
Target_Include_Directories (
cpphibernate
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../include
)
Target_Link_Libraries (
cpphibernate
cpputils
cppmariadb
)
Configure_File ( ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/options.h.in
${CPPHIBERNATE_GENERATE_DIR}/cpphibernate/options.h )
Target_Include_Directories ( cpphibernate
PUBLIC ${CPPHIBERNATE_INCLUDE_DIR}
${CPPHIBERNATE_GENERATE_DIR} )
Target_Link_Libraries ( cpphibernate
cpputils
cppmariadb )

# Install
If ( BUILD_SHARED_LIBS OR CPPHIBERNATE_INSTALL_DEV_FILES )
Install ( TARGETS cpphibernate DESTINATION lib )
EndIf ( )

If ( CPPHIBERNATE_INSTALL_DEV_FILES )
Install ( FILES ${CPPHIBERNATE_INCLUDE_DIR}/cpphibernate.h DESTINATION include )
Install ( DIRECTORY ${CPPHIBERNATE_INCLUDE_DIR}/cpphibernate DESTINATION include )
Install ( DIRECTORY ${CPPHIBERNATE_GENERATE_DIR}/cpphibernate DESTINATION include )
EndIf ( )

# Optimize
If ( __COTIRE_INCLUDED )
Cotire ( cpphibernate )
EndIf ( )


src/driver/mariadb/schema/field.cpp → src/cpphibernate/driver/mariadb/schema/field.cpp View File


src/driver/mariadb/schema/schema.cpp → src/cpphibernate/driver/mariadb/schema/schema.cpp View File


src/driver/mariadb/schema/table.cpp → src/cpphibernate/driver/mariadb/schema/table.cpp View File


src/types.cpp → src/cpphibernate/types.cpp View File


+ 6
- 8
test/CMakeLists.txt View File

@@ -16,14 +16,12 @@ Project ( test_cpphibernate )
File ( GLOB_RECURSE SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp )
List ( FILTER SOURCE_FILES EXCLUDE REGEX "/_[A-Za-z0-9_-]*\.cpp$" )
Add_Executable ( test_cpphibernate EXCLUDE_FROM_ALL ${SOURCE_FILES} )
Target_Link_Libraries (
test_cpphibernate
cpphibernate
gtest
gmock
gmock_main
pthread
)
Target_Link_Libraries ( test_cpphibernate
cpphibernate
gtest
gmock
gmock_main
pthread )
If ( __COTIRE_INCLUDED )
Cotire ( test_cpphibernate )
EndIf ( )


Loading…
Cancel
Save