| # ************************************************************* |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| # ************************************************************* |
| |
| # WinResTarget class |
| |
| gb_WinResTarget_DEFAULTDEFS := $(gb_RCDEFS) |
| |
| define gb_WinResTarget_WinResTarget |
| $(call gb_WinResTarget_WinResTarget_init,$(1)) |
| $$(eval $$(call gb_Module_register_target,$(call gb_WinResTarget_get_target,$(1)),$(call gb_WinResTarget_get_clean_target,$(1)))) |
| |
| endef |
| |
| define gb_WinResTarget_WinResTarget_init |
| $(call gb_WinResTarget_get_target,$(1)) : DEFS := $(gb_WinResTarget_DEFAULTDEFS) |
| $(call gb_WinResTarget_get_target,$(1)) : INCLUDE := $(SOLARINC) |
| $(call gb_WinResTarget_get_clean_target,$(1)) : RCFILE := |
| $(call gb_WinResTarget_get_target,$(1)) : RCFILE := |
| ifeq ($(gb_FULLDEPS),$(true)) |
| $(call gb_WinResTarget_get_target,$(1)) : $(call gb_WinResTarget_get_dep_target,$(1)) |
| ifneq ($(wildcard $(call gb_WinResTarget_get_dep_target,$(1))),) |
| include $(call gb_WinResTarget_get_dep_target,$(1)) |
| else |
| $(firstword $(MAKEFILE_LIST)) : $(call gb_WinResTarget_get_dep_target,$(1)) |
| endif |
| $(call gb_WinResTarget_get_dep_target,$(1)) : DEFS := $$(gb_WinResTarget_DEFAULTDEFS) |
| $(call gb_WinResTarget_get_dep_target,$(1)) : INCLUDE := $$(gb_WinResTarget_INCLUDE) |
| $(call gb_WinResTarget_get_dep_target,$(1)) : RCFILE := |
| endif |
| |
| endef |
| |
| ifeq ($(gb_FULLDEPS),$(true)) |
| $(call gb_WinResTarget_get_dep_target,%) : $(gb_Helper_MISCDUMMY) |
| mkdir -p $(dir $@) && \ |
| echo '$(call gb_WinResTarget_get_target,$*) : $$(gb_Helper_PHONY)' > $@ |
| endif |
| |
| |
| $(call gb_WinResTarget_get_target,%) : |
| $(call gb_Output_announce,$*,$(true),RES,1) |
| $(call gb_WinResTarget__command_dep,$*,$<) |
| $(call gb_Helper_abbreviate_dirs,\ |
| mkdir -p $(dir $@)) |
| $(call gb_WinResTarget__command,$@) |
| |
| $(call gb_WinResTarget_get_clean_target,%) : |
| $(call gb_Helper_abbreviate_dirs,\ |
| rm -f $(call gb_WinResTarget_get_target,$*)) |
| |
| define gb_WinResTarget_set_defs |
| $(call gb_WinResTarget_get_target,$(1)) : DEFS := $(2) |
| $(call gb_WinResTarget_get_dep_target,$(1)) : DEFS := $(2) |
| |
| endef |
| |
| define gb_WinResTarget_set_include |
| $(call gb_WinResTarget_get_target,$(1)) : INCLUDE := $(2) |
| |
| endef |
| |
| define gb_WinResTarget_add_file |
| $(call gb_WinResTarget_get_clean_target,$(1)) : RCFILE=$(gb_Helper_SRCDIR_NATIVE)/$(2).rc |
| $(call gb_WinResTarget_get_target,$(1)) : RCFILE=$(foreach file,$(gb_REPOS),$(realpath $(file)/$(strip $(2)).rc)) |
| $(call gb_WinResTarget_get_target,$(1)) : $(foreach file,$(gb_REPOS),$(realpath $(file)/$(strip $(2)).rc)) |
| |
| endef |
| |
| define gb_WinResTarget_add_dependency |
| $(call gb_WinResTarget_get_target,$(1)) : $(foreach file,$(2),$(foreach repo,$(gb_REPOS),$(realpath $(repo)/$(strip $(file))))) |
| |
| endef |