1#************************************************************** 2# 3# Licensed to the Apache Software Foundation (ASF) under one 4# or more contributor license agreements. See the NOTICE file 5# distributed with this work for additional information 6# regarding copyright ownership. The ASF licenses this file 7# to you under the Apache License, Version 2.0 (the 8# "License"); you may not use this file except in compliance 9# with the License. You may obtain a copy of the License at 10# 11# http://www.apache.org/licenses/LICENSE-2.0 12# 13# Unless required by applicable law or agreed to in writing, 14# software distributed under the License is distributed on an 15# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16# KIND, either express or implied. See the License for the 17# specific language governing permissions and limitations 18# under the License. 19# 20#************************************************************** 21 22 23 24# outdir target pattern 25 26gb_ComponentTarget_get_outdir_target = $(OUTDIR)/xml/component/$(1).component 27gb_ComponentTarget_get_outdir_inbuild_target = $(OUTDIR)/xml/component/$(1).inbuild.component 28gb_Executable_get_target = $(OUTDIR)/bin/$(1)$(gb_Executable_EXT) 29gb_PackagePart_get_destinations = $(OUTDIR)/xml $(OUTDIR)/inc $(OUTDIR)/bin $(OUTDIR)/lib $(OUTDIR)/idl $(OUTDIR)/pck 30gb_PackagePart_get_target = $(OUTDIR)/$(1) 31gb_ResTarget_get_outdir_imagelist_target = $(OUTDIR)/res/img/$(1).ilst 32gb_ResTarget_get_outdir_target = $(OUTDIR)/bin/$(1).res 33gb_Jar_get_outdir_target = $(OUTDIR)/bin/$(1).jar 34gb_Zip_get_outdir_target = $(OUTDIR)/pck/$(1).zip 35# outdir targets: $(1) is path 36gb_Configuration_registry = $(OUTDIR)/xml/registry 37gb_XcsTarget_get_outdir_target = $(gb_Configuration_registry)/schema/$(1) 38gb_XcuDataTarget_get_outdir_target = $(gb_Configuration_registry)/data/$(1) 39gb_XcuLangpackTarget_get_outdir_target = $(gb_Configuration_registry)/spool/$(1) 40gb_XcuModuleTarget_get_outdir_target = $(gb_Configuration_registry)/spool/$(1) 41 42 43define gb_Library_get_target 44$(patsubst $(1):%,$(gb_Library_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_Library_TARGETS)):%,$(gb_Library_FILENAMES))) 45endef 46 47define gb_StaticLibrary_get_target 48$(patsubst $(1):%,$(gb_StaticLibrary_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_StaticLibrary_TARGETS)):%,$(gb_StaticLibrary_FILENAMES))) 49endef 50 51 52# workdir target patterns 53 54gb_AllLangResTarget_get_target = $(WORKDIR)/AllLangRes/$(1) 55gb_Ant_get_target = $(WORKDIR)/Ant/$(1).jar 56gb_AsmObject_get_target = $(WORKDIR)/AsmObject/$(1).o 57gb_BisonTarget_get_target = $(WORKDIR)/Bison/$(1)/$(2).cxx 58gb_CObject_get_target = $(WORKDIR)/CObject/$(1).o 59gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component 60gb_ComponentTarget_get_inbuild_target = $(WORKDIR)/ComponentTarget/$(1).inbuild.component 61gb_CustomTarget_get_repo_target = $(WORKDIR)/CustomTarget/$(2)_$(1).done 62gb_CustomTarget_get_target = $(WORKDIR)/CustomTarget/$(1).done 63gb_CustomTarget_get_workdir = $(WORKDIR)/CustomTarget/$(1) 64gb_CxxObject_get_target = $(WORKDIR)/CxxObject/$(1).o 65gb_GenCObject_get_target = $(WORKDIR)/GenCObject/$(1).o 66gb_GenCxxObject_get_target = $(WORKDIR)/GenCxxObject/$(1).o 67gb_Executable_get_external_headers_target = $(WORKDIR)/ExternalHeaders/Executable/$(1) 68gb_Executable_get_headers_target = $(WORKDIR)/Headers/Executable/$(1) 69gb_FlexTarget_get_target = $(WORKDIR)/Flex/$(1)/$(2).cxx 70gb_GoogleTest_get_target = $(WORKDIR)/GoogleTest/$(1).test 71gb_Jar_get_target = $(WORKDIR)/Jar/$(1).jar 72gb_Jar_get_classsetname = Jar/$(1) 73gb_JavaClassSet_get_classdir = $(WORKDIR)/JavaClassSet/$(1) 74gb_JavaClassSet_get_repo_target = $(WORKDIR)/JavaClassSet/$(2)/$(1).done 75gb_JavaClassSet_get_target = $(WORKDIR)/JavaClassSet/$(1)/done 76gb_JunitTest_get_classsetname = JunitTest/$(1) 77gb_JunitTest_get_target = $(WORKDIR)/JunitTest/$(1)/done 78gb_JunitTest_get_userdir = $(WORKDIR)/JunitTest/$(1)/user 79gb_LinkTarget_get_external_headers_target = $(WORKDIR)/ExternalHeaders/$(1) 80gb_LinkTarget_get_headers_target = $(WORKDIR)/Headers/$(1) 81gb_LinkTarget_get_target = $(WORKDIR)/LinkTarget/$(1) 82gb_UnoApiTarget_get_target = $(WORKDIR)/UnoApiTarget/$(1).rdb 83gb_UnoApiOutTarget_get_target = $(OUTDIR)/bin/$(1).rdb 84gb_UnoApiPartTarget_get_target = $(WORKDIR)/UnoApiPartTarget/$(1) 85gb_UnoApiTarget_get_header_target = $(WORKDIR)/UnoApiHeaders/$(1) 86gb_UnoPrivateApiTarget_get_target = $(WORKDIR)/UnoPrivateApi/$(1) 87gb_UnoPrivateApiExtractTarget_get_target = $(WORKDIR)/UnoPrivateApiExtract/$(1) 88gb_Module_get_check_target = $(WORKDIR)/Module/check/$(1) 89gb_Module_get_subsequentcheck_target = $(WORKDIR)/Module/subsequentcheck/$(1) 90gb_Module_get_target = $(WORKDIR)/Module/$(1) 91gb_NoexPrecompiledHeader_get_dep_target = $(WORKDIR)/Dep/NoexPrecompiledHeader/$(gb_NoexPrecompiledHeader_DEBUGDIR)/$(1).hxx.pch.d 92gb_NoexPrecompiledHeader_get_target = $(WORKDIR)/NoexPrecompiledHeader/$(gb_NoexPrecompiledHeader_DEBUGDIR)/$(1).hxx.pch 93gb_ObjCObject_get_target = $(WORKDIR)/ObjCObject/$(1).o 94gb_ObjCxxObject_get_target = $(WORKDIR)/ObjCxxObject/$(1).o 95gb_Package_get_preparation_target = $(WORKDIR)/Package/prepared/$(1) 96gb_Package_get_target = $(WORKDIR)/Package/$(1) 97gb_PrecompiledHeader_get_dep_target = $(WORKDIR)/Dep/PrecompiledHeader/$(gb_PrecompiledHeader_DEBUGDIR)/$(1).hxx.pch.d 98gb_PrecompiledHeader_get_target = $(WORKDIR)/PrecompiledHeader/$(gb_PrecompiledHeader_DEBUGDIR)/$(1).hxx.pch 99gb_ResTarget_get_imagelist_target = $(WORKDIR)/ResTarget/$(1).ilst 100gb_ResTarget_get_target = $(WORKDIR)/ResTarget/$(1).res 101gb_SdiTarget_get_target = $(WORKDIR)/SdiTarget/$(1) 102gb_SrsPartMergeTarget_get_target = $(WORKDIR)/SrsPartMergeTarget/$(1) 103gb_SrsPartTarget_get_target = $(WORKDIR)/SrsPartTarget/$(1) 104gb_SrsTarget_get_target = $(WORKDIR)/SrsTarget/$(1).srs 105gb_WinResTarget_get_target = $(WORKDIR)/WinResTarget/$(1)$(gb_WinResTarget_POSTFIX) 106# workdir targets: $(1) is prefix/path 107gb_Configuration_get_target = $(WORKDIR)/Configuration/$(1).done 108gb_XcsTarget_get_target = $(WORKDIR)/XcsTarget/$(1) 109gb_XcuDataTarget_get_target = $(WORKDIR)/XcuDataTarget/$(1) 110gb_XcuLangpackTarget_get_target = $(WORKDIR)/XcuLangpackTarget/$(1) 111gb_XcuModuleTarget_get_target = $(WORKDIR)/XcuModuleTarget/$(1) 112gb_XcuMergeTarget_get_target = $(WORKDIR)/XcuMergeTarget/$(1) 113gb_XcuResTarget_get_target = $(WORKDIR)/XcuResTarget/$(1) 114gb_Zip_get_target = $(WORKDIR)/Zip/$(1).zip 115gb_Zip_get_final_target = $(WORKDIR)/Zip/$(1).done 116 117define gb_Library_get_external_headers_target 118$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES))) 119endef 120 121define gb_Library_get_headers_target 122$(patsubst $(1):%,$(WORKDIR)/Headers/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES))) 123endef 124 125define gb_StaticLibrary_get_external_headers_target 126$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/StaticLibrary/%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES))) 127endef 128 129define gb_StaticLibrary_get_headers_target 130$(patsubst $(1):%,$(WORKDIR)/Headers/StaticLibrary/%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES))) 131endef 132 133$(eval $(call gb_Helper_make_clean_targets,\ 134 AllLangResTarget \ 135 Ant \ 136 ComponentTarget \ 137 JavaClassSet \ 138 Jar \ 139 JunitTest \ 140 LinkTarget \ 141 Module \ 142 WinResTarget \ 143 NoexPrecompiledHeader \ 144 PackagePart \ 145 PrecompiledHeader \ 146 ResTarget \ 147 SdiTarget \ 148 SrsTarget \ 149 GoogleTest \ 150 CustomTarget \ 151 UnoApiTarget \ 152 Zip \ 153 XcsTarget \ 154 XcuDataTarget \ 155 XcuModuleTarget \ 156 XcuLangpackTarget \ 157 XcuMergeTarget \ 158 XcuResTarget \ 159 Configuration \ 160)) 161 162$(eval $(call gb_Helper_make_outdir_clean_targets,\ 163 Executable \ 164 Library \ 165 Package \ 166 StaticLibrary \ 167 UnoApiOutTarget \ 168)) 169 170$(eval $(call gb_Helper_make_dep_targets,\ 171 CObject \ 172 CxxObject \ 173 ObjCObject \ 174 ObjCxxObject \ 175 GenCObject \ 176 GenCxxObject \ 177 LinkTarget \ 178 SrsPartTarget \ 179 SrsTarget \ 180 UnoApiTarget \ 181)) 182 183# other getters 184 185define gb_Library_get_layer 186$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_LAYER))) 187endef 188 189define gb_Executable_get_layer 190$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Executable_LAYER))) 191endef 192 193define gb_Library_get_filename 194$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_FILENAMES))) 195endef 196 197define gb_StaticLibrary_get_filename 198$(patsubst $(1):%,%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES))) 199endef 200 201 202# static members declared here because they are used globally 203 204gb_Library_OUTDIRLOCATION = $(OUTDIR)/lib 205gb_Library_DLLDIR = $(WORKDIR)/LinkTarget/Library 206gb_StaticLibrary_OUTDIRLOCATION = $(OUTDIR)/lib 207 208# vim: set noet sw=4 ts=4: 209