зеркало из https://github.com/microsoft/git.git
cmake(): allow setting HOST_CPU for cross-compilation
Git's regular Makefile mentions that HOST_CPU should be defined when cross-compiling Git:37796bca76/Makefile (L438-L439)
This is then used to set the GIT_HOST_CPU variable when compiling Git:37796bca76/Makefile (L1337-L1341)
Then, when the user runs `git version --build-options`, it returns that value:37796bca76/help.c (L658)
This commit adds the same functionality to the CMake configuration. Users can now set -DHOST_CPU= to set the target architecture. Signed-off-by: Dennis Ameling <dennis@dennisameling.com>
This commit is contained in:
Родитель
d4dff62947
Коммит
4d7e56a453
|
@ -184,7 +184,7 @@ jobs:
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
cmake `pwd`/contrib/buildsystems/ -DCMAKE_PREFIX_PATH=`pwd`/compat/vcbuild/vcpkg/installed/${{ matrix.arch }}-windows \
|
cmake `pwd`/contrib/buildsystems/ -DCMAKE_PREFIX_PATH=`pwd`/compat/vcbuild/vcpkg/installed/${{ matrix.arch }}-windows \
|
||||||
-DNO_GETTEXT=YesPlease -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON -DCMAKE_GENERATOR_PLATFORM=${{ matrix.arch }} -DVCPKG_ARCH=${{ matrix.arch }}-windows
|
-DNO_GETTEXT=YesPlease -DPERL_TESTS=OFF -DPYTHON_TESTS=OFF -DCURL_NO_CURL_CMAKE=ON -DCMAKE_GENERATOR_PLATFORM=${{ matrix.arch }} -DVCPKG_ARCH=${{ matrix.arch }}-windows -DHOST_CPU=${{ matrix.arch }}
|
||||||
- name: MSBuild
|
- name: MSBuild
|
||||||
run: msbuild git.sln -property:Configuration=Release -property:Platform=${{ matrix.arch }} -maxCpuCount:4 -property:PlatformToolset=v142
|
run: msbuild git.sln -property:Configuration=Release -property:Platform=${{ matrix.arch }} -maxCpuCount:4 -property:PlatformToolset=v142
|
||||||
- name: bundle artifact tar
|
- name: bundle artifact tar
|
||||||
|
|
|
@ -223,7 +223,14 @@ endif()
|
||||||
|
|
||||||
#default behaviour
|
#default behaviour
|
||||||
include_directories(${CMAKE_SOURCE_DIR})
|
include_directories(${CMAKE_SOURCE_DIR})
|
||||||
add_compile_definitions(GIT_HOST_CPU="${CMAKE_SYSTEM_PROCESSOR}")
|
|
||||||
|
# When cross-compiling, define HOST_CPU as the canonical name of the CPU on
|
||||||
|
# which the built Git will run (for instance "x86_64").
|
||||||
|
if(NOT HOST_CPU)
|
||||||
|
add_compile_definitions(GIT_HOST_CPU="${CMAKE_SYSTEM_PROCESSOR}")
|
||||||
|
else()
|
||||||
|
add_compile_definitions(GIT_HOST_CPU="${HOST_CPU}")
|
||||||
|
endif()
|
||||||
add_compile_definitions(SHA256_BLK INTERNAL_QSORT RUNTIME_PREFIX)
|
add_compile_definitions(SHA256_BLK INTERNAL_QSORT RUNTIME_PREFIX)
|
||||||
add_compile_definitions(NO_OPENSSL SHA1_DC SHA1DC_NO_STANDARD_INCLUDES
|
add_compile_definitions(NO_OPENSSL SHA1_DC SHA1DC_NO_STANDARD_INCLUDES
|
||||||
SHA1DC_INIT_SAFE_HASH_DEFAULT=0
|
SHA1DC_INIT_SAFE_HASH_DEFAULT=0
|
||||||
|
|
Загрузка…
Ссылка в новой задаче