refactor CMake configuration: update library installation paths and exclude Unity from default build
This commit is contained in:
18
.idea/copilotDiffState.xml
generated
Normal file
18
.idea/copilotDiffState.xml
generated
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CopilotDiffPersistence">
|
||||
<option name="pendingDiffs">
|
||||
<map>
|
||||
<entry key="/CMakeLists (snapshot).txt">
|
||||
<value>
|
||||
<PendingDiffInfo>
|
||||
<option name="filePath" value="/CMakeLists (snapshot).txt" />
|
||||
<option name="originalContent" value="cmake_minimum_required(VERSION 4.2) project(dynamic_array LANGUAGES C) set(CMAKE_C_STANDARD 11) # Configures Testing Framework include(CTest) add_subdirectory(submodules/external/unity) enable_testing() # Configures the project add_subdirectory(src) # Install the library to a specific directory (e.g., 'lib') relative to the install prefix install(TARGETS dynamic_array LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs shared libs to <prefix>/lib ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs static libs to <prefix>/lib RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} # Installs associated executables to <prefix>/bin ) " />
|
||||
<option name="updatedContent" value="cmake_minimum_required(VERSION 4.2) project(dynamic_array LANGUAGES C) set(CMAKE_C_STANDARD 11) # Configures Testing Framework include(CTest) # Exclude Unity from default build/install - only needed for tests add_subdirectory(submodules/external/unity EXCLUDE_FROM_ALL) enable_testing() # Configures the project add_subdirectory(src) # Install the library to a specific directory (e.g., 'lib') relative to the install prefix install(TARGETS dynamic_array LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs shared libs to <prefix>/lib ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs static libs to <prefix>/lib RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} # Installs associated executables to <prefix>/bin ) " />
|
||||
</PendingDiffInfo>
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
||||
@@ -6,9 +6,10 @@ set(CMAKE_C_STANDARD 11)
|
||||
|
||||
# Configures Testing Framework
|
||||
include(CTest)
|
||||
add_subdirectory(submodules/external/unity)
|
||||
# Exclude Unity from default build/install - only needed for tests
|
||||
add_subdirectory(submodules/external/unity EXCLUDE_FROM_ALL)
|
||||
enable_testing()
|
||||
|
||||
|
||||
# Configures the project
|
||||
add_subdirectory(src)
|
||||
add_subdirectory(src)
|
||||
@@ -1,9 +1,22 @@
|
||||
# Library Configuration
|
||||
add_library(dynamic_array
|
||||
dynamic_array.c
|
||||
dynamic_array.h)
|
||||
target_include_directories(dynamic_array INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set_target_properties(dynamic_array PROPERTIES PUBLIC_HEADER dynamic_array.h)
|
||||
|
||||
|
||||
# Install the library to a specific directory (e.g., 'lib') relative to the install prefix
|
||||
install(TARGETS dynamic_array
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs shared libs to <prefix>/lib
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # Installs static libs to <prefix>/lib
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} # Installs associated executables to <prefix>/bin
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} # Installs headers to <prefix>/include
|
||||
)
|
||||
|
||||
|
||||
# Testing
|
||||
|
||||
add_executable(test_dynamic_array test_dynamic_array.c)
|
||||
target_link_libraries(test_dynamic_array PRIVATE dynamic_array unity::framework)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user