1*b1cdbd2cSJim Jagielski#************************************************************** 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski#************************************************************** 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielski# SrsPartMergeTarget class 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielskigb_SrsPartMergeTarget_TRANSEXTARGET := $(call gb_Executable_get_target,transex3) 27*b1cdbd2cSJim Jagielski# gb_SrsPartMergeTarget_TRANSEXPRECOMMAND is set by the platforms 28*b1cdbd2cSJim Jagielski 29*b1cdbd2cSJim Jagielskigb_SrsPartMergeTarget_TRANSEXCOMMAND := $(gb_SrsPartMergeTarget_TRANSEXPRECOMMAND) $(gb_SrsPartMergeTarget_TRANSEXTARGET) 30*b1cdbd2cSJim Jagielskigb_SrsPartMergeTarget_SDFLOCATION := $(LOCDIR)/l10n/$(INPATH)/misc/sdf/ 31*b1cdbd2cSJim Jagielskigb_SrsPartMergeTarget_REPOS := $(gb_REPOS) 32*b1cdbd2cSJim Jagielski 33*b1cdbd2cSJim Jagielskidefine gb_SrsPartMergeTarget__command 34*b1cdbd2cSJim Jagielski$(call gb_Output_announce,$(3),$(true),srs,1) 35*b1cdbd2cSJim Jagielski$(call gb_Helper_abbreviate_dirs_native,\ 36*b1cdbd2cSJim Jagielski mkdir -p $(dir $(1)) && \ 37*b1cdbd2cSJim Jagielski $(gb_SrsPartMergeTarget_TRANSEXCOMMAND) \ 38*b1cdbd2cSJim Jagielski -p $(firstword $(subst /, ,$(2))) \ 39*b1cdbd2cSJim Jagielski -i $(3) \ 40*b1cdbd2cSJim Jagielski -o $(1) \ 41*b1cdbd2cSJim Jagielski -m $(SDF) \ 42*b1cdbd2cSJim Jagielski -l all) 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim Jagielskiendef 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielskidefine gb_SrsPartMergeTarget__rules 47*b1cdbd2cSJim Jagielski$$(call gb_SrsPartMergeTarget_get_target,%) : $(1)/% $$(gb_Helper_MISCDUMMY) | $$(gb_SrsPartMergeTarget_TRANSEXTARGET) 48*b1cdbd2cSJim Jagielski $$(if $$(SDF),$$(call gb_SrsPartMergeTarget__command,$$@,$$*,$$<),mkdir -p $$(dir $$@) && cp $$< $$@) 49*b1cdbd2cSJim Jagielski 50*b1cdbd2cSJim Jagielskiendef 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski$(foreach repo,$(gb_SrsPartMergeTarget_REPOS),$(eval $(call gb_SrsPartMergeTarget__rules,$(repo)))) 53*b1cdbd2cSJim Jagielski 54*b1cdbd2cSJim Jagielski# SrsPartTarget class 55*b1cdbd2cSJim Jagielski 56*b1cdbd2cSJim Jagielskigb_SrsPartTarget_REPOS := $(gb_REPOS) 57*b1cdbd2cSJim Jagielski# defined by platform 58*b1cdbd2cSJim Jagielski# gb_SrsPartTarget_RSCTARGET 59*b1cdbd2cSJim Jagielski# gb_SrsPartTarget_RSCCOMMAND 60*b1cdbd2cSJim Jagielski# gb_SrsPartTarget__command_dep 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielskidefine gb_SrsPartTarget__command 63*b1cdbd2cSJim Jagielski$(call gb_Helper_abbreviate_dirs_native,\ 64*b1cdbd2cSJim Jagielski mkdir -p $(dir $(1)) && \ 65*b1cdbd2cSJim Jagielski RESPONSEFILE=`$(gb_MKTEMP)` && \ 66*b1cdbd2cSJim Jagielski echo "-s \ 67*b1cdbd2cSJim Jagielski $(INCLUDE) \ 68*b1cdbd2cSJim Jagielski -I$(dir $(3)) \ 69*b1cdbd2cSJim Jagielski $(DEFS) \ 70*b1cdbd2cSJim Jagielski -fp=$(1) \ 71*b1cdbd2cSJim Jagielski $(if $(MERGEDFILE),$(MERGEDFILE),$<)" > $${RESPONSEFILE} && \ 72*b1cdbd2cSJim Jagielski $(gb_SrsPartTarget_RSCCOMMAND) -presponse @$${RESPONSEFILE} && \ 73*b1cdbd2cSJim Jagielski rm -rf $${RESPONSEFILE}) 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielskiendef 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim Jagielskidefine gb_SrsPartTarget__rules 78*b1cdbd2cSJim Jagielski$$(call gb_SrsPartTarget_get_target,%) : $(1)/% $$(gb_Helper_MISCDUMMY) | $$(gb_SrsPartTarget_RSCTARGET) 79*b1cdbd2cSJim Jagielski $$(call gb_SrsPartTarget__command_dep,$$*,$$<) 80*b1cdbd2cSJim Jagielski $$(call gb_SrsPartTarget__command,$$@,$$*,$$<) 81*b1cdbd2cSJim Jagielski 82*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 83*b1cdbd2cSJim Jagielski$$(call gb_SrsPartTarget_get_dep_target,%) : $(1)/% $$(gb_Helper_MISCDUMMY) 84*b1cdbd2cSJim Jagielski $$(call gb_Helper_abbreviate_dirs,\ 85*b1cdbd2cSJim Jagielski mkdir -p $$(dir $$@) && \ 86*b1cdbd2cSJim Jagielski echo '$$(call gb_SrsPartTarget_get_target,$$*) : $$(gb_Helper_PHONY)' > $$@) 87*b1cdbd2cSJim Jagielskiendif 88*b1cdbd2cSJim Jagielski 89*b1cdbd2cSJim Jagielskiendef 90*b1cdbd2cSJim Jagielski 91*b1cdbd2cSJim Jagielski$(foreach repo,$(gb_SrsPartTarget_REPOS),$(eval $(call gb_SrsPartTarget__rules,$(repo)))) 92*b1cdbd2cSJim Jagielski 93*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 94*b1cdbd2cSJim Jagielski$(call gb_SrsPartTarget_get_dep_target,%) : 95*b1cdbd2cSJim Jagielski $(eval $(call gb_Output_error,Unable to find resource definition file $* in repositories: $(gb_SrsPartTarget_REPOS))) 96*b1cdbd2cSJim Jagielskiendif 97*b1cdbd2cSJim Jagielski 98*b1cdbd2cSJim Jagielski 99*b1cdbd2cSJim Jagielskidefine gb_SrsPartTarget_SrsPartTarget 100*b1cdbd2cSJim Jagielskiifeq ($(strip $(gb_WITH_LANG)),) 101*b1cdbd2cSJim Jagielski$(call gb_SrsPartTarget_get_target,$(1)) : MERGEDFILE := 102*b1cdbd2cSJim Jagielskielse 103*b1cdbd2cSJim Jagielski$(call gb_SrsPartTarget_get_target,$(1)) : MERGEDFILE := $(call gb_SrsPartMergeTarget_get_target,$(1)) 104*b1cdbd2cSJim Jagielski$(call gb_SrsPartTarget_get_target,$(1)) : $(call gb_SrsPartMergeTarget_get_target,$(1)) 105*b1cdbd2cSJim Jagielski$(call gb_SrsPartMergeTarget_get_target,$(1)) : SDF := $(realpath $(gb_SrsPartMergeTarget_SDFLOCATION)$(dir $(1))localize.sdf) 106*b1cdbd2cSJim Jagielski$(call gb_SrsPartMergeTarget_get_target,$(1)) : $(realpath $(gb_SrsPartMergeTarget_SDFLOCATION)$(dir $(1))localize.sdf) 107*b1cdbd2cSJim Jagielskiendif 108*b1cdbd2cSJim Jagielski 109*b1cdbd2cSJim Jagielskiendef 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim Jagielski 112*b1cdbd2cSJim Jagielski# SrsTarget class 113*b1cdbd2cSJim Jagielski 114*b1cdbd2cSJim Jagielskigb_SrsTarget_DEFAULTDEFS := $(gb_GLOBALDEFS) 115*b1cdbd2cSJim Jagielski 116*b1cdbd2cSJim Jagielski.PHONY : $(call gb_SrsTarget_get_clean_target,%) 117*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_clean_target,%) : 118*b1cdbd2cSJim Jagielski $(call gb_Output_announce,$*,$(false),SRS,1) 119*b1cdbd2cSJim Jagielski -$(call gb_Helper_abbreviate_dirs,\ 120*b1cdbd2cSJim Jagielski rm -f $(call gb_SrsTarget_get_target,$*) \ 121*b1cdbd2cSJim Jagielski $(call gb_SrsTarget_get_dep_target,$*) \ 122*b1cdbd2cSJim Jagielski $(foreach part,$(PARTS),$(call gb_SrsPartTarget_get_target,$(part))) \ 123*b1cdbd2cSJim Jagielski $(foreach part,$(PARTS),$(call gb_SrsPartTarget_get_dep_target,$(part))) \ 124*b1cdbd2cSJim Jagielski $(foreach part,$(PARTS),$(call gb_SrsPartMergeTarget_get_target,$(part)))) 125*b1cdbd2cSJim Jagielski 126*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 127*b1cdbd2cSJim Jagielskidefine gb_SrsTarget__command_dep 128*b1cdbd2cSJim Jagielski$(call gb_Output_announce,SRS:$(2),$(true),DEP,1) 129*b1cdbd2cSJim Jagielski$(call gb_Helper_abbreviate_dirs,\ 130*b1cdbd2cSJim Jagielski mkdir -p $(dir $(1)) && \ 131*b1cdbd2cSJim Jagielski cat $(3) > $(1)) 132*b1cdbd2cSJim Jagielskiendef 133*b1cdbd2cSJim Jagielskiendif 134*b1cdbd2cSJim Jagielski 135*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,%) : 136*b1cdbd2cSJim Jagielski $(call gb_SrsTarget__command_dep,$(call gb_SrsTarget_get_dep_target,$*),$*,$(foreach part,$(PARTS),$(call gb_SrsPartTarget_get_dep_target,$(part)))) 137*b1cdbd2cSJim Jagielski $(call gb_Output_announce,$*,$(true),SRS,1) 138*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs,\ 139*b1cdbd2cSJim Jagielski mkdir -p $(dir $@) && \ 140*b1cdbd2cSJim Jagielski cat $^ > $@) 141*b1cdbd2cSJim Jagielski 142*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 143*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_dep_target,%) : 144*b1cdbd2cSJim Jagielski $(call gb_SrsTarget__command_dep,$@,$*,$^) 145*b1cdbd2cSJim Jagielskiendif 146*b1cdbd2cSJim Jagielski 147*b1cdbd2cSJim Jagielskidefine gb_SrsTarget_SrsTarget 148*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : DEFS := $(gb_SrsTarget_DEFAULTDEFS) 149*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : INCLUDE := $(SOLARINC) 150*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_clean_target,$(1)) : PARTS := 151*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : PARTS := 152*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 153*b1cdbd2cSJim Jagielskiifneq ($(wildcard $(call gb_SrsTarget_get_dep_target,$(1))),) 154*b1cdbd2cSJim Jagielskiinclude $(call gb_SrsTarget_get_dep_target,$(1)) 155*b1cdbd2cSJim Jagielskielse 156*b1cdbd2cSJim Jagielski$(firstword $(MAKEFILE_LIST)) : $(call gb_SrsTarget_get_dep_target,$(1)) 157*b1cdbd2cSJim Jagielskiendif 158*b1cdbd2cSJim Jagielskiendif 159*b1cdbd2cSJim Jagielski 160*b1cdbd2cSJim Jagielskiendef 161*b1cdbd2cSJim Jagielski 162*b1cdbd2cSJim Jagielskidefine gb_SrsTarget_set_defs 163*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : DEFS := $(2) 164*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 165*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_dep_target,$(1)) : DEFS := $(2) 166*b1cdbd2cSJim Jagielskiendif 167*b1cdbd2cSJim Jagielski 168*b1cdbd2cSJim Jagielskiendef 169*b1cdbd2cSJim Jagielski 170*b1cdbd2cSJim Jagielskidefine gb_SrsTarget_set_include 171*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : INCLUDE := $(2) 172*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 173*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_dep_target,$(1)) : INCLUDE := $(2) 174*b1cdbd2cSJim Jagielskiendif 175*b1cdbd2cSJim Jagielski 176*b1cdbd2cSJim Jagielskiendef 177*b1cdbd2cSJim Jagielski 178*b1cdbd2cSJim Jagielskidefine gb_SrsTarget_add_file 179*b1cdbd2cSJim Jagielskiifeq ($(gb_FULLDEPS),$(true)) 180*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_dep_target,$(1)) : $(call gb_SrsPartTarget_get_dep_target,$(2)) 181*b1cdbd2cSJim Jagielskiendif 182*b1cdbd2cSJim Jagielski$(call gb_SrsPartTarget_SrsPartTarget,$(2)) 183*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : $(call gb_SrsPartTarget_get_target,$(2)) 184*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_clean_target,$(1)) : PARTS += $(2) 185*b1cdbd2cSJim Jagielski$(call gb_SrsTarget_get_target,$(1)) : PARTS += $(2) 186*b1cdbd2cSJim Jagielski 187*b1cdbd2cSJim Jagielskiendef 188*b1cdbd2cSJim Jagielski 189*b1cdbd2cSJim Jagielskidefine gb_SrsTarget_add_files 190*b1cdbd2cSJim Jagielski$(foreach file,$(2),$(call gb_SrsTarget_add_file,$(1),$(file))) 191*b1cdbd2cSJim Jagielski 192*b1cdbd2cSJim Jagielskiendef 193*b1cdbd2cSJim Jagielski 194*b1cdbd2cSJim Jagielski 195*b1cdbd2cSJim Jagielski# ResTarget 196*b1cdbd2cSJim Jagielski 197*b1cdbd2cSJim Jagielskigb_ResTarget_RSCTARGET := $(gb_SrsPartTarget_RSCTARGET) 198*b1cdbd2cSJim Jagielskigb_ResTarget_RSCCOMMAND := $(gb_SrsPartTarget_RSCCOMMAND) 199*b1cdbd2cSJim Jagielskigb_ResTarget_DEFIMAGESLOCATION := $(SRCDIR)/default_images/ 200*b1cdbd2cSJim Jagielski 201*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_clean_target,%) : 202*b1cdbd2cSJim Jagielski $(call gb_Output_announce,$*,$(false),RES,2) 203*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs,\ 204*b1cdbd2cSJim Jagielski rm -f $(call gb_ResTarget_get_target,$*) $(call gb_ResTarget_get_imagelist_target,$*) $(call gb_ResTarget_get_outdir_target,$*) $(call gb_ResTarget_get_outdir_imagelist_target,$*)) 205*b1cdbd2cSJim Jagielski 206*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,%) : $(gb_Helper_MISCDUMMY) | $(gb_ResTarget_RSCTARGET) 207*b1cdbd2cSJim Jagielski $(call gb_Output_announce,$*,$(true),RES,2) 208*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs_native,\ 209*b1cdbd2cSJim Jagielski mkdir -p $(dir $@) $(OUTDIR)/bin \ 210*b1cdbd2cSJim Jagielski $(dir $(call gb_ResTarget_get_imagelist_target,$*)) && \ 211*b1cdbd2cSJim Jagielski RESPONSEFILE=`$(gb_MKTEMP)` && \ 212*b1cdbd2cSJim Jagielski echo "-r -p \ 213*b1cdbd2cSJim Jagielski -lg$(LANGUAGE) \ 214*b1cdbd2cSJim Jagielski -fs=$@ \ 215*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)/$(LIBRARY)) \ 216*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)/imglst/$(LANGUAGE)) \ 217*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)/imglst) \ 218*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)/res/$(LANGUAGE)) \ 219*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)/res) \ 220*b1cdbd2cSJim Jagielski -lip=$(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION)) \ 221*b1cdbd2cSJim Jagielski -lip=$(gb_ResTarget_DEFIMAGESLOCATION)res/$(LANGUAGE) \ 222*b1cdbd2cSJim Jagielski -lip=$(gb_ResTarget_DEFIMAGESLOCATION)res \ 223*b1cdbd2cSJim Jagielski -subMODULE=$(dir $(realpath $(gb_ResTarget_DEFIMAGESLOCATION)$(RESLOCATION))) \ 224*b1cdbd2cSJim Jagielski -subGLOBALRES=$(gb_ResTarget_DEFIMAGESLOCATION)res \ 225*b1cdbd2cSJim Jagielski -oil=$(dir $(call gb_ResTarget_get_imagelist_target,$*)) \ 226*b1cdbd2cSJim Jagielski $(filter-out $(gb_Helper_MISCDUMMY),$^)" > $${RESPONSEFILE} && \ 227*b1cdbd2cSJim Jagielski $(gb_ResTarget_RSCCOMMAND) @$${RESPONSEFILE} && \ 228*b1cdbd2cSJim Jagielski rm -f $${RESPONSEFILE}) 229*b1cdbd2cSJim Jagielski 230*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_outdir_target,%) : 231*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs,\ 232*b1cdbd2cSJim Jagielski $(call gb_Deliver_deliver,$<,$@) && \ 233*b1cdbd2cSJim Jagielski $(call gb_Deliver_deliver,$(dir $<)/$(notdir $(ILSTTARGET)),$(ILSTTARGET))) 234*b1cdbd2cSJim Jagielski 235*b1cdbd2cSJim Jagielskidefine gb_ResTarget_ResTarget 236*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,$(1)) : LIBRARY = $(2) 237*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,$(1)) : LANGUAGE = $(3) 238*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,$(1)) : RESLOCATION = $(2) 239*b1cdbd2cSJim Jagielski$(call gb_AllLangResTarget_get_target,$(2)) : $(call gb_ResTarget_get_outdir_target,$(1)) 240*b1cdbd2cSJim Jagielski$(call gb_AllLangResTarget_get_clean_target,$(2)) : $(call gb_ResTarget_get_clean_target,$(1)) 241*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_imagelist_target,$(1)) : $(call gb_ResTarget_get_target,$(1)) 242*b1cdbd2cSJim Jagielski 243*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_outdir_target,$(1)) : $(call gb_ResTarget_get_target,$(1)) 244*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_outdir_target,$(1)) : ILSTTARGET = $(call gb_ResTarget_get_outdir_imagelist_target,$(1)) 245*b1cdbd2cSJim Jagielski$(call gb_Deliver_add_deliverable,$(call gb_ResTarget_get_outdir_target,$(1)),$(call gb_ResTarget_get_target,$(1))) 246*b1cdbd2cSJim Jagielski$(call gb_Deliver_add_deliverable,$(call gb_ResTarget_get_outdir_imagelist_target,$(1)),$(call gb_ResTarget_get_imagelist_target,$(1))) 247*b1cdbd2cSJim Jagielski 248*b1cdbd2cSJim Jagielskiendef 249*b1cdbd2cSJim Jagielski 250*b1cdbd2cSJim Jagielskidefine gb_ResTarget_add_file 251*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,$(1)) : $(2) 252*b1cdbd2cSJim Jagielski 253*b1cdbd2cSJim Jagielskiendef 254*b1cdbd2cSJim Jagielski 255*b1cdbd2cSJim Jagielskidefine gb_ResTarget_add_one_srs 256*b1cdbd2cSJim Jagielski$(call gb_ResTarget_add_file,$(1),$(call gb_SrsTarget_get_target,$(2))) 257*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_clean_target,$(1)) : $(call gb_SrsTarget_get_clean_target,$(2)) 258*b1cdbd2cSJim Jagielski 259*b1cdbd2cSJim Jagielskiendef 260*b1cdbd2cSJim Jagielski 261*b1cdbd2cSJim Jagielskidefine gb_ResTarget_add_files 262*b1cdbd2cSJim Jagielski$(foreach file,$(2),\ 263*b1cdbd2cSJim Jagielski $(call gb_ResTarget_add_file,$(1),$(file))) 264*b1cdbd2cSJim Jagielski 265*b1cdbd2cSJim Jagielskiendef 266*b1cdbd2cSJim Jagielski 267*b1cdbd2cSJim Jagielskidefine gb_ResTarget_add_srs 268*b1cdbd2cSJim Jagielski$(foreach srs,$(2),\ 269*b1cdbd2cSJim Jagielski $(call gb_ResTarget_add_one_srs,$(1),$(srs))) 270*b1cdbd2cSJim Jagielski 271*b1cdbd2cSJim Jagielskiendef 272*b1cdbd2cSJim Jagielski 273*b1cdbd2cSJim Jagielskidefine gb_ResTarget_set_reslocation 274*b1cdbd2cSJim Jagielski$(call gb_ResTarget_get_target,$(1)) : RESLOCATION = $(2) 275*b1cdbd2cSJim Jagielski 276*b1cdbd2cSJim Jagielskiendef 277*b1cdbd2cSJim Jagielski 278*b1cdbd2cSJim Jagielski 279*b1cdbd2cSJim Jagielski# AllLangResTarget 280*b1cdbd2cSJim Jagielski 281*b1cdbd2cSJim Jagielskigb_AllLangResTarget_LANGS := en-US $(filter-out en-US,$(gb_WITH_LANG)) 282*b1cdbd2cSJim Jagielski 283*b1cdbd2cSJim Jagielskidefine gb_AllLangResTarget_set_langs 284*b1cdbd2cSJim Jagielskigb_AllLangResTarget_LANGS := $(1) 285*b1cdbd2cSJim Jagielskiendef 286*b1cdbd2cSJim Jagielski 287*b1cdbd2cSJim Jagielski$(call gb_AllLangResTarget_get_clean_target,%) : 288*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs,\ 289*b1cdbd2cSJim Jagielski rm -f $(call gb_AllLangResTarget_get_target,$*)) 290*b1cdbd2cSJim Jagielski 291*b1cdbd2cSJim Jagielski$(call gb_AllLangResTarget_get_target,%) : 292*b1cdbd2cSJim Jagielski $(call gb_Helper_abbreviate_dirs,\ 293*b1cdbd2cSJim Jagielski mkdir -p $(dir $@) && touch $@) 294*b1cdbd2cSJim Jagielski 295*b1cdbd2cSJim Jagielskidefine gb_AllLangResTarget_AllLangResTarget 296*b1cdbd2cSJim Jagielski$(foreach lang,$(gb_AllLangResTarget_LANGS),\ 297*b1cdbd2cSJim Jagielski $(call gb_ResTarget_ResTarget,$(1)$(lang),$(1),$(lang))) 298*b1cdbd2cSJim Jagielski$$(eval $$(call gb_Module_register_target,$(call gb_AllLangResTarget_get_target,$(1)),$(call gb_AllLangResTarget_get_clean_target,$(1)))) 299*b1cdbd2cSJim Jagielski 300*b1cdbd2cSJim Jagielskiendef 301*b1cdbd2cSJim Jagielski 302*b1cdbd2cSJim Jagielskidefine gb_AllLangResTarget_add_one_srs 303*b1cdbd2cSJim Jagielski$(foreach lang,$(gb_AllLangResTarget_LANGS),\ 304*b1cdbd2cSJim Jagielski $(call gb_ResTarget_add_one_srs,$(1)$(lang),$(2))) 305*b1cdbd2cSJim Jagielski 306*b1cdbd2cSJim Jagielskiendef 307*b1cdbd2cSJim Jagielski 308*b1cdbd2cSJim Jagielskidefine gb_AllLangResTarget_add_srs 309*b1cdbd2cSJim Jagielski$(foreach srs,$(2),\ 310*b1cdbd2cSJim Jagielski $(call gb_AllLangResTarget_add_one_srs,$(1),$(srs))) 311*b1cdbd2cSJim Jagielski 312*b1cdbd2cSJim Jagielskiendef 313*b1cdbd2cSJim Jagielski 314*b1cdbd2cSJim Jagielskidefine gb_AllLangResTarget_set_reslocation 315*b1cdbd2cSJim Jagielski$(foreach lang,$(gb_AllLangResTarget_LANGS),\ 316*b1cdbd2cSJim Jagielski $(call gb_ResTarget_set_reslocation,$(1)$(lang),$(2))) 317*b1cdbd2cSJim Jagielski 318*b1cdbd2cSJim Jagielskiendef 319*b1cdbd2cSJim Jagielski 320*b1cdbd2cSJim Jagielski# vim: set noet sw=4 ts=4: 321