|  | @@ -270,26 +270,28 @@ ifeq ($(origin LD), default)
 | 
	
		
			
				|  |  |  LD = $(LD_$(CONFIG))
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  LDXX ?= $(LDXX_$(CONFIG))
 | 
	
		
			
				|  |  | +ARFLAGS ?= rcs
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Linux)
 | 
	
		
			
				|  |  |  ifeq ($(origin AR), default)
 | 
	
		
			
				|  |  | -AR = ar rcs
 | 
	
		
			
				|  |  | +AR = ar
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  STRIP ?= strip --strip-unneeded
 | 
	
		
			
				|  |  |  else
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  ifeq ($(origin AR), default)
 | 
	
		
			
				|  |  | -AR = libtool -no_warning_for_no_symbols -o
 | 
	
		
			
				|  |  | +AR = libtool
 | 
	
		
			
				|  |  | +ARFLAGS = -no_warning_for_no_symbols -o
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  STRIP ?= strip -x
 | 
	
		
			
				|  |  |  else
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),MINGW32)
 | 
	
		
			
				|  |  |  ifeq ($(origin AR), default)
 | 
	
		
			
				|  |  | -AR = ar rcs
 | 
	
		
			
				|  |  | +AR = ar
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  STRIP ?= strip --strip-unneeded
 | 
	
		
			
				|  |  |  else
 | 
	
		
			
				|  |  |  ifeq ($(origin AR), default)
 | 
	
		
			
				|  |  | -AR = ar rcs
 | 
	
		
			
				|  |  | +AR = ar
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  STRIP ?= strip
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -455,7 +457,7 @@ endif
 | 
	
		
			
				|  |  |  #
 | 
	
		
			
				|  |  |  ifeq ($(GRPC_CROSS_COMPILE),true)
 | 
	
		
			
				|  |  |  LDFLAGS += $(GRPC_CROSS_LDOPTS) # e.g. -L/usr/local/lib -L/usr/local/cross/lib
 | 
	
		
			
				|  |  | -AROPTS = $(GRPC_CROSS_AROPTS) # e.g., rc --target=elf32-little
 | 
	
		
			
				|  |  | +ARFLAGS += $(GRPC_CROSS_AROPTS) # e.g., rc --target=elf32-little
 | 
	
		
			
				|  |  |  USE_BUILT_PROTOC = false
 | 
	
		
			
				|  |  |  endif
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -3230,7 +3232,7 @@ $(LIBDIR)/$(CONFIG)/libaddress_sorting.a:  $(LIBADDRESS_SORTING_OBJS)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libaddress_sorting.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBADDRESS_SORTING_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(LIBADDRESS_SORTING_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libaddress_sorting.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -3359,7 +3361,7 @@ $(LIBDIR)/$(CONFIG)/libend2end_nosec_tests.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_nosec_tests.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libend2end_nosec_tests.a $(LIBEND2END_NOSEC_TESTS_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libend2end_nosec_tests.a $(LIBEND2END_NOSEC_TESTS_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libend2end_nosec_tests.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -3482,7 +3484,7 @@ $(LIBDIR)/$(CONFIG)/libend2end_tests.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libend2end_tests.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libend2end_tests.a $(LIBEND2END_TESTS_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libend2end_tests.a $(LIBEND2END_TESTS_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libend2end_tests.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -3592,7 +3594,7 @@ $(LIBDIR)/$(CONFIG)/libgpr.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS_SORTING_DEP) $(
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgpr.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBGPR_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBGPR_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgpr.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4142,7 +4144,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP) $(ADDRESS
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBGRPC_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS)  $(OPENSSL_MERGE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBGRPC_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS)  $(OPENSSL_MERGE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4199,7 +4201,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a $(LIBGRPC_CSHARP_EXT_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a $(LIBGRPC_CSHARP_EXT_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4274,7 +4276,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBGRPC_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a $(LIBGRPC_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_test_util.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4322,7 +4324,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a: $(ZLIB_DEP) $(CARES_DEP) $(ADD
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a $(LIBGRPC_TEST_UTIL_UNSECURE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_test_util_unsecure.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4768,7 +4770,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS_SORTI
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBGRPC_UNSECURE_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a $(LIBGRPC_UNSECURE_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_unsecure.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -4832,7 +4834,7 @@ $(LIBDIR)/$(CONFIG)/libbenchmark_helpers.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_D
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libbenchmark_helpers.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libbenchmark_helpers.a $(LIBBENCHMARK_HELPERS_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libbenchmark_helpers.a $(LIBBENCHMARK_HELPERS_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libbenchmark_helpers.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5138,7 +5140,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP) $(ADDRE
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBGRPC++_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++.a $(LIBGRPC++_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5209,7 +5211,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_alts.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP) $(
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_alts.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_alts.a $(LIBGRPC++_ALTS_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_alts.a $(LIBGRPC++_ALTS_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_alts.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5281,7 +5283,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_error_details.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARE
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_error_details.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_error_details.a $(LIBGRPC++_ERROR_DETAILS_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_error_details.a $(LIBGRPC++_ERROR_DETAILS_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_error_details.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5355,7 +5357,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_D
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a $(LIBGRPC++_REFLECTION_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a $(LIBGRPC++_REFLECTION_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_reflection.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5429,7 +5431,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_test.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP) $(
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_test.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_test.a $(LIBGRPC++_TEST_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_test.a $(LIBGRPC++_TEST_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_test.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5478,7 +5480,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a $(LIBGRPC++_TEST_CONFIG_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a $(LIBGRPC++_TEST_CONFIG_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_test_config.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5535,7 +5537,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DE
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBGRPC++_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a $(LIBGRPC++_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_test_util.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5823,7 +5825,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS_SOR
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBGRPC++_UNSECURE_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a $(LIBGRPC++_UNSECURE_OBJS)  $(LIBGPR_OBJS)  $(LIBGRPC_ABSEIL_OBJS)  $(ZLIB_MERGE_OBJS)  $(CARES_MERGE_OBJS)  $(ADDRESS_SORTING_MERGE_OBJS)  $(UPB_MERGE_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc++_unsecure.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5884,7 +5886,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a $(LIBGRPC_PLUGIN_SUPPORT_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a $(LIBGRPC_PLUGIN_SUPPORT_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_plugin_support.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -5935,7 +5937,7 @@ $(LIBDIR)/$(CONFIG)/libgrpcpp_channelz.a: $(ZLIB_DEP) $(OPENSSL_DEP) $(CARES_DEP
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpcpp_channelz.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpcpp_channelz.a $(LIBGRPCPP_CHANNELZ_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpcpp_channelz.a $(LIBGRPCPP_CHANNELZ_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpcpp_channelz.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6254,7 +6256,7 @@ $(LIBDIR)/$(CONFIG)/libboringssl.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS_SORTING_D
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libboringssl.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libboringssl.a $(LIBBORINGSSL_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libboringssl.a $(LIBBORINGSSL_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libboringssl.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6294,7 +6296,7 @@ $(LIBDIR)/$(CONFIG)/libboringssl_test_util.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libboringssl_test_util.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libboringssl_test_util.a $(LIBBORINGSSL_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libboringssl_test_util.a $(LIBBORINGSSL_TEST_UTIL_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libboringssl_test_util.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6349,7 +6351,7 @@ $(LIBDIR)/$(CONFIG)/libbenchmark.a: $(ZLIB_DEP) $(CARES_DEP) $(ADDRESS_SORTING_D
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libbenchmark.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBBENCHMARK_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libbenchmark.a $(LIBBENCHMARK_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libbenchmark.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6398,7 +6400,7 @@ $(LIBDIR)/$(CONFIG)/libupb.a:  $(LIBUPB_OBJS)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libupb.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libupb.a $(LIBUPB_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libupb.a $(LIBUPB_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libupb.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6455,7 +6457,7 @@ $(LIBDIR)/$(CONFIG)/libz.a:  $(LIBZ_OBJS)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libz.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libz.a $(LIBZ_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libz.a $(LIBZ_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libz.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6531,7 +6533,7 @@ $(LIBDIR)/$(CONFIG)/libares.a:  $(LIBARES_OBJS)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libares.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libares.a $(LIBARES_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libares.a $(LIBARES_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libares.a
 | 
	
		
			
				|  |  |  endif
 | 
	
	
		
			
				|  | @@ -6606,7 +6608,7 @@ $(LIBDIR)/$(CONFIG)/libgrpc_abseil.a:  $(LIBGRPC_ABSEIL_OBJS)
 | 
	
		
			
				|  |  |  	$(E) "[AR]      Creating $@"
 | 
	
		
			
				|  |  |  	$(Q) mkdir -p `dirname $@`
 | 
	
		
			
				|  |  |  	$(Q) rm -f $(LIBDIR)/$(CONFIG)/libgrpc_abseil.a
 | 
	
		
			
				|  |  | -	$(Q) $(AR) $(AROPTS) $(LIBDIR)/$(CONFIG)/libgrpc_abseil.a $(LIBGRPC_ABSEIL_OBJS) 
 | 
	
		
			
				|  |  | +	$(Q) $(AR) $(ARFLAGS) $(LIBDIR)/$(CONFIG)/libgrpc_abseil.a $(LIBGRPC_ABSEIL_OBJS) 
 | 
	
		
			
				|  |  |  ifeq ($(SYSTEM),Darwin)
 | 
	
		
			
				|  |  |  	$(Q) ranlib -no_warning_for_no_symbols $(LIBDIR)/$(CONFIG)/libgrpc_abseil.a
 | 
	
		
			
				|  |  |  endif
 |