update cmakelists, think about normalizing base_type from T everywhere... consistency and stuff, y'know?

This commit is contained in:
ThePhD 2018-08-10 20:43:39 -04:00
parent 0e321272e6
commit c09e8309df
3 changed files with 12 additions and 5 deletions

View File

@ -139,6 +139,11 @@ CMAKE_DEPENDENT_OPTION(TESTS_DYNAMIC_LOADING_EXAMPLES "Enable build of dynamic l
# # # sol2 Library # # # sol2 Library
# # Add a target for sol2's library to be included by external users # # Add a target for sol2's library to be included by external users
add_library(sol2 INTERFACE) add_library(sol2 INTERFACE)
add_library(sol2::sol2 ALIAS sol2)
set_target_properties(sol2
PROPERTIES
EXPORT_NAME sol2::sol2)
target_include_directories(sol2 INTERFACE target_include_directories(sol2 INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:include>) $<INSTALL_INTERFACE:include>)
@ -198,8 +203,10 @@ if (PYTHONINTERP_FOUND)
add_custom_target(sol2_single_header ALL add_custom_target(sol2_single_header ALL
DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/single/sol.hpp" "${CMAKE_CURRENT_BINARY_DIR}/single/sol_forward.hpp") DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/single/sol.hpp" "${CMAKE_CURRENT_BINARY_DIR}/single/sol_forward.hpp")
add_library(sol2_single INTERFACE) add_library(sol2_single INTERFACE)
add_library(sol2::sol2_single ALIAS sol2_single)
set_target_properties(sol2_single set_target_properties(sol2_single
PROPERTIES PROPERTIES
EXPORT_NAME sol2::sol2_single
INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/single") INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_CURRENT_BINARY_DIR}/single")
add_dependencies(sol2_single sol2_single_header) add_dependencies(sol2_single sol2_single_header)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/single/sol.hpp" "${CMAKE_CURRENT_BINARY_DIR}/single/sol_forward.hpp" install(FILES "${CMAKE_CURRENT_BINARY_DIR}/single/sol.hpp" "${CMAKE_CURRENT_BINARY_DIR}/single/sol_forward.hpp"

View File

@ -28,8 +28,8 @@
namespace sol { namespace sol {
template <typename T> template <typename base_type>
struct metatable : basic_table<T> { struct basic_metatable : basic_table<base_type> {
}; };

View File

@ -46,7 +46,7 @@ namespace sol {
class usertype; class usertype;
template <typename T> template <typename T>
class simple_usertype; class simple_usertype;
template <bool, typename T> template <bool, typename base_type>
class basic_table_core; class basic_table_core;
template <bool b> template <bool b>
using table_core = basic_table_core<b, reference>; using table_core = basic_table_core<b, reference>;
@ -54,8 +54,8 @@ namespace sol {
using main_table_core = basic_table_core<b, main_reference>; using main_table_core = basic_table_core<b, main_reference>;
template <bool b> template <bool b>
using stack_table_core = basic_table_core<b, stack_reference>; using stack_table_core = basic_table_core<b, stack_reference>;
template <typename T> template <typename base_type>
using basic_table = basic_table_core<false, T>; using basic_table = basic_table_core<false, base_type>;
typedef table_core<false> table; typedef table_core<false> table;
typedef table_core<true> global_table; typedef table_core<true> global_table;
typedef main_table_core<false> main_table; typedef main_table_core<false> main_table;