Subject: Re: [PATCH v2 1/2] Fix CMakeLists.txt on Linux.

From: Junio C Hamano <[email-masked]>
Date: Tue, 24 May 2022 16:04:43 -0700

"Yuyi Wang via GitGitGadget" <[email-masked]> writes:

> Subject: Re: [PATCH v2 1/2] Fix CMakeLists.txt on Linux.

Perhaps

	Subject: cmake: fix CMakeLists on Linux

i.e. with a short and meaningful <area>: prefix, no need to
capitalize the first word after the prefix, without the terminating
full-stop.

From: Yuyi Wang <[email-masked]>
>
> CMakeLists.txt didn't follow the grammar of `set`, and it will fail when
> setting `USE_VCPKG` off on non-Windows platforms.

So any non-Windows, the use of set() here was broken.  It is
understandable because cmake support was added primarily for
Windows.  It is nevertheless good to see it corrected.

> When the platform is Linux, the Makefile adds `compat/linux/procinfo.o`
> to `COMPAT_OBJS`, but the CMakeLists.txt didn't add
> `compat/linux/procinfo.c` to `compat_SOURCES`. It would cause linkage
> error.

OK.  I didn't know anybody cared about using cmake on non-Windows
platforms for this project.

Thanks, will queue, together with the other two patches.

> Signed-off-by: Yuyi Wang <[email-masked]>
> ---
>  contrib/buildsystems/CMakeLists.txt | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/contrib/buildsystems/CMakeLists.txt b/contrib/buildsystems/CMakeLists.txt
> index 185f56f414f..7f333e303c2 100644
> --- a/contrib/buildsystems/CMakeLists.txt
> +++ b/contrib/buildsystems/CMakeLists.txt
> @@ -54,7 +54,7 @@ set(CMAKE_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/../..)
>  
>  option(USE_VCPKG "Whether or not to use vcpkg for obtaining dependencies.  Only applicable to Windows platforms" ON)
>  if(NOT WIN32)
> -	set(USE_VCPKG OFF CACHE BOOL FORCE)
> +	set(USE_VCPKG OFF CACHE BOOL "" FORCE)
>  endif()
>  
>  if(NOT DEFINED CMAKE_EXPORT_COMPILE_COMMANDS)
> @@ -277,7 +277,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
>  
>  elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
>  	add_compile_definitions(PROCFS_EXECUTABLE_PATH="/proc/self/exe" HAVE_DEV_TTY )
> -	list(APPEND compat_SOURCES unix-socket.c unix-stream-server.c)
> +	list(APPEND compat_SOURCES unix-socket.c unix-stream-server.c compat/linux/procinfo.c)
>  endif()
>  
>  if(CMAKE_SYSTEM_NAME STREQUAL "Windows")