build: improve OS string in CMake and `config-win32.h`
This patch makes CMake fill the "OS string" with the value of
`CMAKE_C_COMPILER_TARGET`, if passed. This typically contains a triplet,
the same we can pass to `./configure` via `--host=`.
For non-CMake, non-autotools, Windows builds, this patch adds the ability
to override the default `OS` value in `lib/config-win32.h`.
With these its possible to get the same OS string across the three build
systems.
This patch supersedes the earlier, partial, CMake-only solution:
435f395f3f
, thus retiring the
`CURL_OS_SUFFIX` CMake option.
Reviewed-by: Jay Satiro
Closes #9117
This commit is contained in:
Родитель
1d5b7b7009
Коммит
ca73991774
|
@ -67,7 +67,11 @@ message(STATUS "curl version=[${CURL_VERSION}]")
|
|||
# SET(PACKAGE_STRING "curl-")
|
||||
# SET(PACKAGE_BUGREPORT "a suitable curl mailing list => https://curl.se/mail/")
|
||||
set(OPERATING_SYSTEM "${CMAKE_SYSTEM_NAME}")
|
||||
set(OS "\"${CMAKE_SYSTEM_NAME}${CURL_OS_SUFFIX}\"")
|
||||
if(CMAKE_C_COMPILER_TARGET)
|
||||
set(OS "\"${CMAKE_C_COMPILER_TARGET}\"")
|
||||
else()
|
||||
set(OS "\"${CMAKE_SYSTEM_NAME}\"")
|
||||
endif()
|
||||
|
||||
include_directories(${CURL_SOURCE_DIR}/include)
|
||||
|
||||
|
|
|
@ -663,7 +663,7 @@ Vista
|
|||
/* ---------------------------------------------------------------- */
|
||||
|
||||
/* Define cpu-machine-OS */
|
||||
#undef OS
|
||||
#if !defined(OS)
|
||||
#if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */
|
||||
#define OS "i386-pc-win32"
|
||||
#elif defined(_M_X64) || defined(__x86_64__) /* x86_64 (MSVC >=2005 or gcc) */
|
||||
|
@ -677,6 +677,7 @@ Vista
|
|||
#else
|
||||
#define OS "unknown-pc-win32"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Name of package */
|
||||
#define PACKAGE "curl"
|
||||
|
|
Загрузка…
Ссылка в новой задаче