Skip to content

Commit 5adf687

Browse files
committed
Replace all CMAKE_BINARY_PATH by PROJECT_BINARY_PATH
It prevents placing any project specific build artifacts in common 'build' directory.
1 parent 359058f commit 5adf687

File tree

3 files changed

+17
-17
lines changed

3 files changed

+17
-17
lines changed

CMakeLists.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ endif()
1818

1919
include(cmake_scripts/external-projects.cmake)
2020

21-
if (EXISTS ${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
22-
message(STATUS "Using conan configuration: ${CMAKE_BINARY_DIR}/conanbuildinfo.cmake")
23-
include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
21+
if (EXISTS ${PROJECT_BINARY_DIR}/conanbuildinfo.cmake)
22+
message(STATUS "Using conan configuration: ${PROJECT_BINARY_DIR}/conanbuildinfo.cmake")
23+
include(${PROJECT_BINARY_DIR}/conanbuildinfo.cmake)
2424
conan_basic_setup()
2525
endif()
2626

@@ -81,7 +81,7 @@ macro(SET_CPP_STANDARD target)
8181
endmacro(SET_CPP_STANDARD)
8282

8383
# We create a configuration file so that other code that include our header files gets the correct configuration.
84-
CONFIGURE_FILE(config.h.template ${CMAKE_BINARY_DIR}/generated-include/${PROJECT_NAME}/config.h)
84+
CONFIGURE_FILE(config.h.template ${PROJECT_BINARY_DIR}/generated-include/${PROJECT_NAME}/config.h)
8585

8686
set(ACTUAL_SOURCES
8787
src/ChunkedReaderImpl.cpp
@@ -124,7 +124,7 @@ set_target_properties(${PROJECT_NAME} PROPERTIES DEBUG_OUTPUT_NAME restc-cppD)
124124
target_include_directories(${PROJECT_NAME}
125125
PUBLIC
126126
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
127-
$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/generated-include>
127+
$<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/generated-include>
128128
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
129129
)
130130

@@ -182,7 +182,7 @@ if (NOT EMBEDDED_RESTC_CPP)
182182
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SAFESEH:NO")
183183
endif()
184184

185-
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib CACHE PATH "Destination location")
185+
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib CACHE PATH "Destination location")
186186
link_directories(${LIBRARY_OUTPUT_PATH})
187187

188188
include(cmake_scripts/doxygen.cmake)
@@ -197,7 +197,7 @@ if (NOT EMBEDDED_RESTC_CPP)
197197
endif()
198198

199199
include(cmake_scripts/install.cmake)
200-
install(DIRECTORY ${CMAKE_BINARY_DIR}/generated-include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
200+
install(DIRECTORY ${PROJECT_BINARY_DIR}/generated-include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
201201

202202
if (RESTC_CPP_WITH_UNIT_TESTS OR RESTC_CPP_WITH_FUNCTIONALT_TESTS)
203203
enable_testing()

cmake_scripts/external-projects.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# add_dependencies(TARGET externalProjectName)
55
# target_link_libraries(TARGET PRIVATE ExternalLibraryName)
66

7-
set(EXTERNAL_PROJECTS_PREFIX ${CMAKE_BINARY_DIR}/external-projects)
7+
set(EXTERNAL_PROJECTS_PREFIX ${PROJECT_BINARY_DIR}/external-projects)
88
set(EXTERNAL_PROJECTS_INSTALL_PREFIX ${EXTERNAL_PROJECTS_PREFIX}/installed)
99

1010
include(ExternalProject)

cmake_scripts/install.cmake

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,30 +13,30 @@ generate_export_header(${PROJECT_NAME}
1313
EXPORT_MACRO_NAME EXPORT
1414
NO_EXPORT_MACRO_NAME NO_EXPORT
1515
PREFIX_NAME RESTC_CPP_
16-
EXPORT_FILE_NAME ${CMAKE_BINARY_DIR}/include-exports/${PROJECT_NAME}/export.h)
16+
EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/include-exports/${PROJECT_NAME}/export.h)
1717
target_include_directories(${PROJECT_NAME}
18-
PUBLIC $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/include-exports> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
18+
PUBLIC $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include-exports> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
1919
)
20-
install(DIRECTORY ${CMAKE_BINARY_DIR}/include-exports/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
20+
install(DIRECTORY ${PROJECT_BINARY_DIR}/include-exports/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
2121

2222
include(CMakePackageConfigHelpers)
2323
set_property(TARGET ${PROJECT_NAME} PROPERTY VERSION ${PROJECT_VERSION})
2424
set_property(TARGET ${PROJECT_NAME} PROPERTY SOVERSION ${PROJECT_VERSION_MAJOR})
2525
set_property(TARGET ${PROJECT_NAME} PROPERTY INTERFACE_${PROJECT_NAME}_MAJOR_VERSION ${PROJECT_VERSION_MAJOR})
2626
set_property(TARGET ${PROJECT_NAME} APPEND PROPERTY COMPATIBLE_INTERFACE_STRING ${PROJECT_VERSION_MAJOR})
2727
write_basic_package_version_file(
28-
"${CMAKE_BINARY_DIR}/CMakePackage/${PROJECT_NAME}ConfigVersion.cmake"
28+
"${PROJECT_BINARY_DIR}/CMakePackage/${PROJECT_NAME}ConfigVersion.cmake"
2929
VERSION ${PROJECT_VERSION}
3030
COMPATIBILITY SameMajorVersion
3131
)
3232
export(EXPORT ${PROJECT_NAME}Targets
33-
FILE "${CMAKE_BINARY_DIR}/CMakePackage/${PROJECT_NAME}.cmake"
33+
FILE "${PROJECT_BINARY_DIR}/CMakePackage/${PROJECT_NAME}.cmake"
3434
)
3535
SET(CONFIG_SOURCE_DIR ${CMAKE_SOURCE_DIR})
36-
SET(CONFIG_DIR ${CMAKE_BINARY_DIR})
36+
SET(CONFIG_DIR ${PROJECT_BINARY_DIR})
3737
SET(${PROJECT_NAME}_INCLUDE_DIR "\${${PROJECT_NAME}_SOURCE_DIR}/include")
3838
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake_scripts/${PROJECT_NAME}Config.cmake.in
39-
"${CMAKE_BINARY_DIR}/CMakePackage/${PROJECT_NAME}Config.cmake"
39+
"${PROJECT_BINARY_DIR}/CMakePackage/${PROJECT_NAME}Config.cmake"
4040
INSTALL_DESTINATION lib/cmake/${PROJECT_NAME}
4141
PATH_VARS ${PROJECT_NAME}_INCLUDE_DIR)
4242
install(EXPORT ${PROJECT_NAME}Targets
@@ -45,8 +45,8 @@ install(EXPORT ${PROJECT_NAME}Targets
4545
)
4646
install(
4747
FILES
48-
"${CMAKE_BINARY_DIR}/CMakePackage/${PROJECT_NAME}Config.cmake"
49-
"${CMAKE_BINARY_DIR}/CMakePackage/${PROJECT_NAME}ConfigVersion.cmake"
48+
"${PROJECT_BINARY_DIR}/CMakePackage/${PROJECT_NAME}Config.cmake"
49+
"${PROJECT_BINARY_DIR}/CMakePackage/${PROJECT_NAME}ConfigVersion.cmake"
5050
DESTINATION lib/cmake/${PROJECT_NAME}
5151
COMPONENT Devel
5252
)

0 commit comments

Comments
 (0)