src/CMakeLists.txt - generate and install camelcase headers

for public headers and exported classes only
This commit is contained in:
Allen Winter
2021-07-13 16:58:25 -04:00
parent 3c5f07ac79
commit 11a1023e79
2 changed files with 19 additions and 1 deletions

View File

@@ -23,6 +23,7 @@
The close and float buttons will be shown directly in the tab-bar.
- Fixes persistent central frame being invisible after closing all tabs (#220)
- Added python bindings for the InitialOption struct (#198)
- Generate and install camelcase forwarding headers (public, exported classes)
* v1.3.1 (7 June 2021)
- Improve restoring layout when RestoreOption_RelativeToMainWindow is used (#171)

View File

@@ -217,6 +217,23 @@ else()
)
endif()
#Generate C/C++ CamelCase forwarding headers (only public includes)
include(ECMGenerateHeaders)
ecm_generate_headers(camelcase_HEADERS
ORIGINAL
CAMELCASE
HEADER_NAMES
Config
DockWidget
DockWidgetBase
FocusScope
FrameworkWidgetFactory,DefaultWidgetFactory
LayoutSaver
MainWindow
MainWindowBase
MainWindowMDI
)
set(RESOURCES ${CMAKE_CURRENT_SOURCE_DIR}/kddockwidgets_resources.qrc)
add_library(kddockwidgets ${KDDockWidgets_LIBRARY_MODE} ${DOCKSLIBS_SRCS} ${DOCKS_INSTALLABLE_INCLUDES} ${RESOURCES})
@@ -249,7 +266,6 @@ if (KDDockWidgets_QTQUICK)
target_compile_definitions(kddockwidgets PUBLIC KDDOCKWIDGETS_QTQUICK)
endif()
if(CMAKE_COMPILER_IS_GNUCXX OR IS_CLANG_BUILD)
target_compile_options(kddockwidgets PRIVATE -Wshadow)
if (NOT MSVC)
@@ -311,6 +327,7 @@ if(MSVC AND NOT ${PROJECT_NAME}_STATIC)
install(FILES "$<TARGET_PDB_FILE_DIR:kddockwidgets>/$<TARGET_PDB_FILE_NAME:kddockwidgets>" DESTINATION ${INSTALL_LIBRARY_DIR} CONFIGURATIONS Debug RelWithDebInfo)
endif()
install(FILES ${camelcase_HEADERS} DESTINATION include/kddockwidgets)
install(FILES ${DOCKS_INSTALLABLE_INCLUDES} DESTINATION include/kddockwidgets)
install(FILES ${DOCKS_INSTALLABLE_PRIVATE_INCLUDES} DESTINATION include/kddockwidgets/private)
install(FILES private/multisplitter/Item_p.h DESTINATION include/kddockwidgets/private/multisplitter)