Fix setting SAL_NON_APPLICATION_FONT_USE
...after a342b72f42 "gbuild: set
SAL_NON_APPLICATION_FONT_USE in gb_CppunitTest_use_more_fonts" had caused e.g.
CppunitTest_vcl_pdfexport to be executed with merely
SAL_NON_APPLICATION_FONT_USE=deny rather than the stronger
SAL_NON_APPLICATION_FONT_USE=abort that vcl/CppunitTest_vcl_pdfexport.mk asked
for.
So introduce a dedicated gb_CppunitTest_set_non_application_font_use that
accumulates the requested modes and then selects the strongest requested one
("allow" over "abort" over "deny"). That also means we can go back to model
"allow" with an unset SAL_NON_APPLICATION_FONT_USE env var.
Change-Id: I32ba0a94c1965f0e3336e676b17f4f5efb85efce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139251
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
This commit is contained in:
@@ -132,6 +132,9 @@ else
|
||||
$(if $(gb_CppunitTest__vcl_no_svp), \
|
||||
$(filter-out SAL_USE_VCLPLUGIN=svp,$(gb_TEST_ENV_VARS)),$(gb_TEST_ENV_VARS)) \
|
||||
$(EXTRA_ENV_VARS) \
|
||||
$(if $(filter allow,$(NON_APPLICATION_FONT_USE)),, \
|
||||
$(if $(filter abort,$(NON_APPLICATION_FONT_USE)),SAL_NON_APPLICATION_FONT_USE=abort, \
|
||||
$(if $(filter deny,$(NON_APPLICATION_FONT_USE)),SAL_NON_APPLICATION_FONT_USE=deny))) \
|
||||
$(if $(filter gdb,$(gb_CppunitTest_GDBTRACE)),,$(gb_CppunitTest_CPPTESTPRECOMMAND)) \
|
||||
$(if $(G_SLICE),G_SLICE=$(G_SLICE)) \
|
||||
$(if $(GLIBCXX_FORCE_NEW),GLIBCXX_FORCE_NEW=$(GLIBCXX_FORCE_NEW)) \
|
||||
@@ -198,6 +201,7 @@ $(call gb_CppunitTest_get_target,$(1)) : UNO_SERVICES :=
|
||||
$(call gb_CppunitTest_get_target,$(1)) : UNO_TYPES :=
|
||||
$(call gb_CppunitTest_get_target,$(1)) : HEADLESS := --headless
|
||||
$(call gb_CppunitTest_get_target,$(1)) : EXTRA_ENV_VARS :=
|
||||
$(call gb_CppunitTest_get_target,$(1)) : NON_APPLICATION_FONT_USE :=
|
||||
$$(eval $$(call gb_Module_register_target,$(call gb_CppunitTest_get_target,$(1)),$(call gb_CppunitTest_get_clean_target,$(1))))
|
||||
$(call gb_Helper_make_userfriendly_targets,$(1),CppunitTest)
|
||||
|
||||
@@ -383,11 +387,17 @@ $(call gb_CppunitTest_get_target,$(1)) : $(call gb_Executable_get_target,$(2))
|
||||
|
||||
endef
|
||||
|
||||
# One of allow, deny, abort:
|
||||
define gb_CppunitTest_set_non_application_font_use
|
||||
$(call gb_CppunitTest_get_target,$(1)) : NON_APPLICATION_FONT_USE += $(2)
|
||||
|
||||
endef
|
||||
|
||||
define gb_CppunitTest_use_more_fonts
|
||||
ifneq ($(filter MORE_FONTS,$(BUILD_TYPE)),)
|
||||
$(call gb_CppunitTest_get_target,$(1)) : \
|
||||
$(foreach font,$(gb_Package_MODULE_ooo_fonts),$(call gb_Package_get_target,$(font)))
|
||||
$(call gb_CppunitTest_get_target,$(1)) : EXTRA_ENV_VARS := SAL_NON_APPLICATION_FONT_USE=deny
|
||||
$(call gb_CppunitTest_set_non_application_font_use,$(1),deny)
|
||||
endif
|
||||
|
||||
endef
|
||||
|
||||
@@ -72,9 +72,7 @@ $(eval $(call gb_CppunitTest_use_uiconfigs,sw_core_layout, \
|
||||
))
|
||||
|
||||
# assert if font/glyph fallback occurs
|
||||
$(call gb_CppunitTest_get_target,sw_core_layout): \
|
||||
EXTRA_ENV_VARS := \
|
||||
SAL_NON_APPLICATION_FONT_USE=abort
|
||||
$(eval $(call gb_CppunitTest_set_non_application_font_use,sw_core_layout,abort))
|
||||
|
||||
$(eval $(call gb_CppunitTest_use_more_fonts,sw_core_layout))
|
||||
|
||||
|
||||
@@ -83,9 +83,7 @@ $(call gb_CppunitTest_get_target,sw_layoutwriter$(1)): \
|
||||
$(call gb_Library_get_target,textconv_dict)
|
||||
|
||||
# assert if font/glyph fallback occurs
|
||||
$(call gb_CppunitTest_get_target,sw_layoutwriter$(1)): \
|
||||
EXTRA_ENV_VARS := \
|
||||
SAL_NON_APPLICATION_FONT_USE=abort
|
||||
$(eval $(call gb_CppunitTest_set_non_application_font_use,sw_layoutwriter$(1),abort))
|
||||
|
||||
$(eval $(call gb_CppunitTest_use_more_fonts,sw_layoutwriter$(1)))
|
||||
|
||||
|
||||
@@ -64,8 +64,6 @@ $(eval $(call gb_CppunitTest_use_more_fonts,vcl_cjk))
|
||||
# we don't have any bundled cjk fonts, so allow use of
|
||||
# system fonts for the cjk tests, tests have to survive
|
||||
# unavailable fonts
|
||||
$(call gb_CppunitTest_get_target,vcl_cjk): \
|
||||
EXTRA_ENV_VARS := \
|
||||
SAL_NON_APPLICATION_FONT_USE=allow
|
||||
$(eval $(call gb_CppunitTest_set_non_application_font_use,vcl_cjk,allow))
|
||||
|
||||
# vim: set noet sw=4 ts=4:
|
||||
|
||||
@@ -44,9 +44,7 @@ $(eval $(call gb_CppunitTest_use_rdb,vcl_pdfexport,services))
|
||||
$(eval $(call gb_CppunitTest_use_configuration,vcl_pdfexport))
|
||||
|
||||
# assert if font/glyph fallback occurs
|
||||
$(call gb_CppunitTest_get_target,vcl_pdfexport): \
|
||||
EXTRA_ENV_VARS := \
|
||||
SAL_NON_APPLICATION_FONT_USE=abort
|
||||
$(eval $(call gb_CppunitTest_set_non_application_font_use,vcl_pdfexport,abort))
|
||||
|
||||
$(eval $(call gb_CppunitTest_use_more_fonts,vcl_pdfexport))
|
||||
|
||||
|
||||
@@ -309,8 +309,7 @@ FcFontSet* FontCfgWrapper::getFontSet()
|
||||
bool bRestrictFontSetToApplicationFonts = false;
|
||||
#if HAVE_MORE_FONTS
|
||||
bRestrictFontSetToApplicationFonts = [] {
|
||||
const char* pEnv = getenv("SAL_NON_APPLICATION_FONT_USE");
|
||||
return pEnv && strcmp(pEnv, "allow") != 0;
|
||||
return getenv("SAL_NON_APPLICATION_FONT_USE") != nullptr;
|
||||
}();
|
||||
#endif
|
||||
if (!bRestrictFontSetToApplicationFonts)
|
||||
|
||||
Reference in New Issue
Block a user