[ 
https://issues.apache.org/jira/browse/PROTON-2774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17778059#comment-17778059
 ] 

ASF subversion and git services commented on PROTON-2774:
---------------------------------------------------------

Commit b3d929c05b82aff891ff63ea606f9afc37a0992d in qpid-proton's branch 
refs/heads/main from Jiri Daněk
[ https://gitbox.apache.org/repos/asf?p=qpid-proton.git;h=b3d929c05 ]

PROTON-2774: replace `CMAKE_SOURCE_DIR` variable with `PROJECT_SOURCE_DIR` 
(#410)

This change is the first step in an effort to allow the CMake build file
 to work as an embedded subproject in an composite CMake build.

> Support composite CMake builds
> ------------------------------
>
>                 Key: PROTON-2774
>                 URL: https://issues.apache.org/jira/browse/PROTON-2774
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: build, proton-c
>    Affects Versions: proton-c-0.39.0
>            Reporter: Jiri Daněk
>            Assignee: Jiri Daněk
>            Priority: Major
>             Fix For: proton-c-0.40.0
>
>
> CMake recognizes the notion that project may be either top-level, or included 
> from other projects that intend to depend on it.
> https://cmake.org/cmake/help/latest/variable/PROJECT_IS_TOP_LEVEL.html
> This inclusion is performed either with add_subdirectory() or by 
> FetchContent_MakeAvailable().
> There are several preconditions for this to work
> #. proton must compile cleanly with whatever compile (warning) flags the 
> top-level project sets; I intend to clean proton so that it compiles with 
> qpid-dispatch/skupper-router flags
> #. CMakeLists.txt need to be written to not assume that 
> CMAKE_SOURCE_DIRECTORY corresponds to the currently active project. Use the 
> PROJECT_SOURCE_DIRECTORY and similar variables instead.
> #. targets in CMakeLists.txt must be written so that they can be immediately 
> used by the including projects
> #. tests and other miscellaneous parts of the project should not be enabled 
> when proton is not the top-project
> As an example, the Google Test project supports this kind of composite builds.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to