[PATCH] D26364: Fix libcxxabi CMake detection of libcxx path to handle LLVM_EXTERNAL_LIBCXX_SOURCE_DIR flag

Justin Bogner via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 7 14:15:13 PST 2016


Mehdi AMINI <mehdi.amini at apple.com> writes:
> mehdi_amini created this revision.
> mehdi_amini added reviewers: bogner, beanz.
> mehdi_amini added a subscriber: llvm-commits.
> Herald added a subscriber: mgorny.
>
> https://reviews.llvm.org/D26364
>
> Files:
>   libcxxabi/CMakeLists.txt
>
>
> Index: libcxxabi/CMakeLists.txt
> ===================================================================
> --- libcxxabi/CMakeLists.txt
> +++ libcxxabi/CMakeLists.txt
> @@ -137,13 +137,19 @@
>    message(FATAL_ERROR "libc++abi must be built as either a shared or static library.")
>  endif()
>  
> +if (LLVM_EXTERNAL_LIBCXX_SOURCE_DIR)
> +  set(LIBCXXABI_LIBCXX_CHECKOUT ${LLVM_EXTERNAL_LIBCXX_SOURCE_DIR})
> +else()
> +  set(LIBCXXABI_LIBCXX_CHECKOUT ${LLVM_MAIN_SRC_DIR}/projects/libcxx/include)
> +endif()

LGTM, but I feel like the variable should be LIBCXXABI_LIBCXX_SRC_DIR or
so, to match LLVM_MAIN_SRC_DIR.

> +
>  find_path(
>    LIBCXXABI_LIBCXX_INCLUDES
>    vector
>    PATHS ${LIBCXXABI_LIBCXX_INCLUDES}
>          ${LIBCXXABI_LIBCXX_PATH}/include
>          ${CMAKE_BINARY_DIR}/${LIBCXXABI_LIBCXX_INCLUDES}
> -        ${LLVM_MAIN_SRC_DIR}/projects/libcxx/include
> +        ${LIBCXXABI_LIBCXX_CHECKOUT}/include
>          ${LLVM_INCLUDE_DIR}/c++/v1
>    )
>  
> @@ -155,7 +161,7 @@
>    test/libcxx/__init__.py
>    PATHS ${LIBCXXABI_LIBCXX_PATH}
>          ${LIBCXXABI_LIBCXX_INCLUDES}/../
> -        ${LLVM_MAIN_SRC_DIR}/projects/libcxx/
> +        ${LIBCXXABI_LIBCXX_CHECKOUT}
>    NO_DEFAULT_PATH
>    )
>  
>


More information about the llvm-commits mailing list