created project with cmake
This commit is contained in:
parent
c4b3d8ac5f
commit
5f6abf300e
54 changed files with 412 additions and 310 deletions
109
Software/Framework/CMakeLists.txt
Normal file
109
Software/Framework/CMakeLists.txt
Normal file
|
@ -0,0 +1,109 @@
|
|||
###########################################################################################
|
||||
#
|
||||
# (c) Technical Software Engineering Plazotta 2021
|
||||
#
|
||||
# CMAKE project file / @Add your project name@
|
||||
#
|
||||
#
|
||||
#-----------------------------------------------------------------------------------------
|
||||
# Define project specific requirements
|
||||
#
|
||||
# Project name, output file name, project description
|
||||
#
|
||||
set(PROJECT_NAME LSFramework)
|
||||
set(PROJECT_OUTPUT_NAME LSFramework)
|
||||
set(PROJECT_DESCRIPTION "LSFramework")
|
||||
#
|
||||
#-----------------------------------------------------------------------------------------
|
||||
# Define group file names
|
||||
#
|
||||
# SOURCE FILES
|
||||
#
|
||||
set(SOURCE_FILES
|
||||
src/Timer.cpp
|
||||
src/LSString.cpp
|
||||
)
|
||||
#
|
||||
# HEADER FILES
|
||||
#
|
||||
set(HEADER_FILES
|
||||
src/LSFramework.Exports.h
|
||||
src/LSMacros.h
|
||||
src/Timer.h
|
||||
src/CJsonDocument.h
|
||||
src/CJsonNode.h
|
||||
src/CJsonArray.h
|
||||
src/CJsonObject.h
|
||||
src/LSString.h
|
||||
src/LSList.h
|
||||
src/LSListItem.h
|
||||
src/LSVector.h
|
||||
)
|
||||
#
|
||||
#-----------------------------------------------------------------------------------------
|
||||
# Define solution folders for group files
|
||||
#
|
||||
source_group("Source Files" FILES ${SOURCE_FILES})
|
||||
source_group("Header Files" FILES ${HEADER_FILES})
|
||||
#
|
||||
#-----------------------------------------------------------------------------------------
|
||||
# DLL definitions
|
||||
#
|
||||
# Setup shared library version
|
||||
#
|
||||
TSEP_SETUP_DLL_VERSION(${PROJECT_DESCRIPTION})
|
||||
#
|
||||
# Create shared library target
|
||||
#
|
||||
add_library(${PROJECT_NAME} SHARED
|
||||
${SOURCE_FILES}
|
||||
${HEADER_FILES}
|
||||
${TSEP_DLL_VERSION_RC}
|
||||
)
|
||||
#
|
||||
# Add alias for the project
|
||||
#
|
||||
add_library(LS::${PROJECT_NAME} ALIAS ${PROJECT_NAME})
|
||||
#
|
||||
# Setup TSEP OS specific settings for the project
|
||||
#
|
||||
TSEP_ADD_OS_SPECIFIC_SETTINGS()
|
||||
#
|
||||
# Setup output name
|
||||
#
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_OUTPUT_NAME})
|
||||
#
|
||||
# Use VS Code Analysis for the project
|
||||
#
|
||||
TSEP_USE_CODE_ANALYSIS(${PROJECT_NAME})
|
||||
#
|
||||
# Define Export Headers
|
||||
#
|
||||
TSEP_ADD_EXPORT_HEADER("${HEADER_FILES}")
|
||||
#
|
||||
# Include files, add your own includes and for the export
|
||||
#
|
||||
target_include_directories(${PROJECT_NAME}
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src>
|
||||
$<INSTALL_INTERFACE:inc>
|
||||
#PRIVATE
|
||||
# include paths, which will not be exported
|
||||
)
|
||||
#
|
||||
# Add used libs
|
||||
#
|
||||
#target_link_libraries(${PROJECT_NAME}
|
||||
# PUBLIC
|
||||
# /- Add your additional libraries -/
|
||||
#)
|
||||
#
|
||||
# Create an Export directory with the defined data
|
||||
#
|
||||
TSEP_CREATE_EXPORT()
|
||||
#
|
||||
#
|
||||
# Create links to necessary dependency libraries
|
||||
#
|
||||
TSEP_GENERATE_DEPENDENCY_LINKS()
|
||||
#
|
Loading…
Add table
Add a link
Reference in a new issue