@@ -103,6 +103,7 @@ def _fill_crossfile_from_toolchain_test(ctx):
103
103
"CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN" : "cc-toolchain" ,
104
104
"CMAKE_C_FLAGS_INIT" : "-cc-flag -gcc_toolchain cc-toolchain" ,
105
105
"CMAKE_EXE_LINKER_FLAGS_INIT" : "executable" ,
106
+ "CMAKE_MODULE_LINKER_FLAGS_INIT" : "shared1 shared2" ,
106
107
"CMAKE_SHARED_LINKER_FLAGS_INIT" : "shared1 shared2" ,
107
108
"CMAKE_SYSROOT" : "/abc/sysroot" ,
108
109
}
@@ -172,6 +173,7 @@ def _reverse_descriptor_dict_test(ctx):
172
173
"CMAKE_CXX_LINK_EXECUTABLE" : struct (value = "CMAKE_CXX_LINK_EXECUTABLE" , replace = True ),
173
174
"CMAKE_C_FLAGS_INIT" : struct (value = "CMAKE_C_FLAGS" , replace = False ),
174
175
"CMAKE_EXE_LINKER_FLAGS_INIT" : struct (value = "CMAKE_EXE_LINKER_FLAGS" , replace = False ),
176
+ "CMAKE_MODULE_LINKER_FLAGS_INIT" : struct (value = "CMAKE_MODULE_LINKER_FLAGS" , replace = False ),
175
177
"CMAKE_SHARED_LINKER_FLAGS_INIT" : struct (value = "CMAKE_SHARED_LINKER_FLAGS" , replace = False ),
176
178
"CMAKE_STATIC_LINKER_FLAGS_INIT" : struct (value = "CMAKE_STATIC_LINKER_FLAGS" , replace = False ),
177
179
}
@@ -317,7 +319,7 @@ export CFLAGS="-U_FORTIFY_SOURCE -fstack-protector -Wall"
317
319
export CXXFLAGS="-U_FORTIFY_SOURCE -fstack-protector -Wall"
318
320
export ASMFLAGS="-U_FORTIFY_SOURCE -fstack-protector -Wall"
319
321
##enable_tracing##
320
- cmake -DCMAKE_AR="/usr/bin/ar" -DCMAKE_SHARED_LINKER_FLAGS="-shared -fuse-ld=gold" -DCMAKE_EXE_LINKER_FLAGS="-fuse-ld=gold -Wl -no-as-needed" -DNOFORTRAN="on" -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$;/abc/def" -DCMAKE_RANLIB="" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
322
+ cmake -DCMAKE_AR="/usr/bin/ar" -DCMAKE_SHARED_LINKER_FLAGS="-shared -fuse-ld=gold" -DCMAKE_MODULE_LINKER_FLAGS="-shared -fuse-ld=gold" - DCMAKE_EXE_LINKER_FLAGS="-fuse-ld=gold -Wl -no-as-needed" -DNOFORTRAN="on" -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$;/abc/def" -DCMAKE_RANLIB="" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
321
323
##disable_tracing##
322
324
"""
323
325
asserts .equals (env , expected .splitlines (), script )
@@ -344,11 +346,14 @@ def _create_min_cmake_script_wipe_toolchain_test(ctx):
344
346
user_env = {}
345
347
user_cache = {
346
348
"CMAKE_PREFIX_PATH" : "/abc/def" ,
349
+ }
350
+ user_cache .update ({
347
351
# These two flags/CMake cache entries must be wiped,
348
- # but the second is not present in toolchain flags.
352
+ # but the third is not present in toolchain flags.
353
+ "CMAKE_MODULE_LINKER_FLAGS" : "" ,
349
354
"CMAKE_SHARED_LINKER_FLAGS" : "" ,
350
355
"WIPE_ME_IF_PRESENT" : "" ,
351
- }
356
+ })
352
357
353
358
script = create_cmake_script (
354
359
"ws" ,
@@ -428,6 +433,7 @@ __var_CMAKE_CXX_FLAGS_INIT="-U_FORTIFY_SOURCE -fstack-protector -Wall"
428
433
__var_CMAKE_C_COMPILER="/usr/bin/gcc"
429
434
__var_CMAKE_C_FLAGS_INIT="-U_FORTIFY_SOURCE -fstack-protector -Wall"
430
435
__var_CMAKE_EXE_LINKER_FLAGS_INIT="-fuse-ld=gold -Wl -no-as-needed"
436
+ __var_CMAKE_MODULE_LINKER_FLAGS_INIT="-shared -fuse-ld=gold"
431
437
__var_CMAKE_SHARED_LINKER_FLAGS_INIT="-shared -fuse-ld=gold"
432
438
cat > crosstool_bazel.cmake << EOF
433
439
set(CMAKE_AR "$$__var_CMAKE_AR$$" CACHE FILEPATH "Archiver")
@@ -437,6 +443,7 @@ set(CMAKE_CXX_FLAGS_INIT "$$__var_CMAKE_CXX_FLAGS_INIT$$")
437
443
set(CMAKE_C_COMPILER "$$__var_CMAKE_C_COMPILER$$")
438
444
set(CMAKE_C_FLAGS_INIT "$$__var_CMAKE_C_FLAGS_INIT$$")
439
445
set(CMAKE_EXE_LINKER_FLAGS_INIT "$$__var_CMAKE_EXE_LINKER_FLAGS_INIT$$")
446
+ set(CMAKE_MODULE_LINKER_FLAGS_INIT "$$__var_CMAKE_MODULE_LINKER_FLAGS_INIT$$")
440
447
set(CMAKE_SHARED_LINKER_FLAGS_INIT "$$__var_CMAKE_SHARED_LINKER_FLAGS_INIT$$")
441
448
EOF
442
449
@@ -509,7 +516,7 @@ export CXXFLAGS="--quoted=\\\"abc def\\\" --sysroot=/abc/sysroot --gcc_toolchain
509
516
export ASMFLAGS="assemble assemble-user"
510
517
export CUSTOM_ENV="YES"
511
518
##enable_tracing##
512
- cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
519
+ cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_MODULE_LINKER_FLAGS="shared1 shared2" - DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
513
520
##disable_tracing##
514
521
"""
515
522
asserts .equals (env , expected .splitlines (), script )
@@ -577,7 +584,7 @@ export CXXFLAGS="--quoted=\\\"abc def\\\" --sysroot=/abc/sysroot --gcc_toolchain
577
584
export ASMFLAGS="assemble assemble-user"
578
585
export CUSTOM_ENV="YES"
579
586
##enable_tracing##
580
- cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" -DANDROID="YES" -DCMAKE_SYSTEM_NAME="Linux" -DCMAKE_SYSTEM_PROCESSOR="x86_64" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
587
+ cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_MODULE_LINKER_FLAGS="shared1 shared2" - DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" -DANDROID="YES" -DCMAKE_SYSTEM_NAME="Linux" -DCMAKE_SYSTEM_PROCESSOR="x86_64" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
581
588
##disable_tracing##
582
589
"""
583
590
asserts .equals (env , expected .splitlines (), script )
@@ -645,7 +652,7 @@ export CXXFLAGS="--quoted=\\\"abc def\\\" --sysroot=/abc/sysroot --gcc_toolchain
645
652
export ASMFLAGS="assemble assemble-user"
646
653
export CUSTOM_ENV="YES"
647
654
##enable_tracing##
648
- cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" -DCMAKE_SYSTEM_NAME="Linux" -DCMAKE_SYSTEM_PROCESSOR="aarch64" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
655
+ cmake -DCMAKE_AR="/cxx_linker_static" -DCMAKE_CXX_LINK_EXECUTABLE="became" -DCMAKE_SHARED_LINKER_FLAGS="shared1 shared2" -DCMAKE_MODULE_LINKER_FLAGS="shared1 shared2" - DCMAKE_EXE_LINKER_FLAGS="executable" -DCMAKE_BUILD_TYPE="user_type" -DCUSTOM_CACHE="YES" -DCMAKE_INSTALL_PREFIX="test_rule" -DCMAKE_PREFIX_PATH="$$EXT_BUILD_DEPS$$" -DCMAKE_RANLIB="" -DCMAKE_SYSTEM_NAME="Linux" -DCMAKE_SYSTEM_PROCESSOR="aarch64" --debug-output -Wdev -G 'Ninja' $$EXT_BUILD_ROOT$$/external/test_rule
649
656
##disable_tracing##
650
657
"""
651
658
asserts .equals (env , expected .splitlines (), script )
@@ -715,6 +722,7 @@ __var_CMAKE_C_COMPILER="sink-cc-value"
715
722
__var_CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN="cc-toolchain"
716
723
__var_CMAKE_C_FLAGS_INIT="-cc-flag -gcc_toolchain cc-toolchain --from-env --additional-flag"
717
724
__var_CMAKE_EXE_LINKER_FLAGS_INIT="executable"
725
+ __var_CMAKE_MODULE_LINKER_FLAGS_INIT="shared1 shared2"
718
726
__var_CMAKE_SHARED_LINKER_FLAGS_INIT="shared1 shared2"
719
727
__var_CMAKE_SYSROOT="/abc/sysroot"
720
728
cat > crosstool_bazel.cmake << EOF
@@ -728,6 +736,7 @@ set(CMAKE_C_COMPILER "$$__var_CMAKE_C_COMPILER$$")
728
736
set(CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN "$$__var_CMAKE_C_COMPILER_EXTERNAL_TOOLCHAIN$$")
729
737
set(CMAKE_C_FLAGS_INIT "$$__var_CMAKE_C_FLAGS_INIT$$")
730
738
set(CMAKE_EXE_LINKER_FLAGS_INIT "$$__var_CMAKE_EXE_LINKER_FLAGS_INIT$$")
739
+ set(CMAKE_MODULE_LINKER_FLAGS_INIT "$$__var_CMAKE_MODULE_LINKER_FLAGS_INIT$$")
731
740
set(CMAKE_SHARED_LINKER_FLAGS_INIT "$$__var_CMAKE_SHARED_LINKER_FLAGS_INIT$$")
732
741
set(CMAKE_SYSROOT "$$__var_CMAKE_SYSROOT$$")
733
742
EOF
0 commit comments