CMakeLists.txt: Fix add_subdirectory build#818
Closed
wantehchang wants to merge 1 commit intomadler:masterfrom
Closed
CMakeLists.txt: Fix add_subdirectory build#818wantehchang wants to merge 1 commit intomadler:masterfrom
wantehchang wants to merge 1 commit intomadler:masterfrom
Conversation
When zlib is built via an add_subdirectory() call, ${CMAKE_SOURCE_DIR}
is the source directory of the parent project. Use
${CMAKE_CURRENT_SOURCE_DIR} instead to refer to the source directory of
the zlib project.
Remove a redundant include_directories(${CMAKE_CURRENT_SOURCE_DIR}) call
in the if(MSVC) block.
Note: This pull request is essentially the same as
madler#471. The only difference is to use
MAKE_CURRENT_SOURCE_DIR instead of PROJECT_SOURCE_DIR.
wantehchang
added a commit
to wantehchang/libavif
that referenced
this pull request
May 25, 2023
Move the include_directories() call with the source and binary directories of ext/zlib after add_subdirectory(ext/zlib) to work around a zlib/CMakeLists.txt bug fixed by madler/zlib#818. The parent project's include directories at the time of an add_subdirectory() call are used by the child project, so the order of include_directories() and add_subdirectory() is important.
wantehchang
added a commit
to wantehchang/libavif
that referenced
this pull request
May 25, 2023
Put an include_directories() call with the source directory of ext/zlib before add_subdirectory(ext/zlib) to work around a zlib/CMakeLists.txt bug fixed by madler/zlib#818. The parent project's include directories at the time of an add_subdirectory() call are used by the child project, so the order of include_directories() and add_subdirectory() is important.
wantehchang
added a commit
to AOMediaCodec/libavif
that referenced
this pull request
May 25, 2023
Put an include_directories() call with the source directory of ext/zlib before add_subdirectory(ext/zlib) to work around a zlib/CMakeLists.txt bug fixed by madler/zlib#818. The parent project's include directories at the time of an add_subdirectory() call are used by the child project, so the order of include_directories() and add_subdirectory() is important.
Closed
|
@madler: Can you look this PR? |
Closed
Owner
|
See #1027 . |
Author
|
I reproduced the bug with libavif v0.9.3 and zlib v1.2.11. I verified with libavif v0.9.3 and zlib commit ed16107 that the bug is gone. Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When zlib is built via an add_subdirectory() call, ${CMAKE_SOURCE_DIR} is the source directory of the parent project. Use ${CMAKE_CURRENT_SOURCE_DIR} instead to refer to the source directory of the zlib project.
Remove a redundant include_directories(${CMAKE_CURRENT_SOURCE_DIR}) call in the if(MSVC) block.
Note: This pull request is essentially the same as #471. The only difference is to use MAKE_CURRENT_SOURCE_DIR instead of PROJECT_SOURCE_DIR.