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
36define gb_Library_get_target
37$(patsubst $(1):%,$(gb_Library_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_Library_TARGETS)):%,$(gb_Library_FILENAMES)))
38endef
39
40define gb_StaticLibrary_get_target
41$(patsubst $(1):%,$(gb_StaticLibrary_OUTDIRLOCATION)/%,$(filter $(filter $(1),$(gb_StaticLibrary_TARGETS)):%,$(gb_StaticLibrary_FILENAMES)))
42endef
43
44
45# workdir target patterns
46
47gb_AllLangResTarget_get_target = $(WORKDIR)/AllLangRes/$(1)
48gb_Ant_get_target = $(WORKDIR)/Ant/$(1).jar
49gb_AsmObject_get_target = $(WORKDIR)/AsmObject/$(1).o
50gb_BisonTarget_get_target = $(WORKDIR)/Bison/$(1)/$(2).cxx
51gb_CObject_get_target = $(WORKDIR)/CObject/$(1).o
52gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component
53gb_ComponentTarget_get_inbuild_target = $(WORKDIR)/ComponentTarget/$(1).inbuild.component
54gb_CustomTarget_get_repo_target = $(WORKDIR)/CustomTarget/$(2)_$(1).done
55gb_CustomTarget_get_target = $(WORKDIR)/CustomTarget/$(1).done
56gb_CustomTarget_get_workdir = $(WORKDIR)/CustomTarget/$(1)
57gb_CxxObject_get_target = $(WORKDIR)/CxxObject/$(1).o
58gb_GenCxxObject_get_target = $(WORKDIR)/GenCxxObject/$(1).o
59gb_Executable_get_external_headers_target = $(WORKDIR)/ExternalHeaders/Executable/$(1)
60gb_Executable_get_headers_target = $(WORKDIR)/Headers/Executable/$(1)
61gb_FlexTarget_get_target = $(WORKDIR)/Flex/$(1)/$(2).cxx
62gb_GoogleTest_get_target = $(WORKDIR)/GoogleTest/$(1).test
63gb_Jar_get_target = $(WORKDIR)/Jar/$(1).jar
64gb_Jar_get_classsetname = Jar/$(1)
65gb_JavaClassSet_get_classdir = $(WORKDIR)/JavaClassSet/$(1)
66gb_JavaClassSet_get_repo_target = $(WORKDIR)/JavaClassSet/$(2)/$(1).done
67gb_JavaClassSet_get_target = $(WORKDIR)/JavaClassSet/$(1)/done
68gb_JunitTest_get_classsetname = JunitTest/$(1)
69gb_JunitTest_get_target = $(WORKDIR)/JunitTest/$(1)/done
70gb_JunitTest_get_userdir = $(WORKDIR)/JunitTest/$(1)/user
71gb_LinkTarget_get_external_headers_target = $(WORKDIR)/ExternalHeaders/$(1)
72gb_LinkTarget_get_headers_target = $(WORKDIR)/Headers/$(1)
73gb_LinkTarget_get_target = $(WORKDIR)/LinkTarget/$(1)
74gb_UnoApiTarget_get_target = $(WORKDIR)/UnoApiTarget/$(1).rdb
75gb_UnoApiOutTarget_get_target = $(OUTDIR)/bin/$(1).rdb
76gb_UnoApiPartTarget_get_target = $(WORKDIR)/UnoApiPartTarget/$(1)
77gb_UnoApiTarget_get_header_target = $(WORKDIR)/UnoApiHeaders/$(1)
78gb_UnoPrivateApiTarget_get_target = $(WORKDIR)/UnoPrivateApi/$(1)
79gb_UnoPrivateApiExtractTarget_get_target = $(WORKDIR)/UnoPrivateApiExtract/$(1)
80gb_Module_get_check_target = $(WORKDIR)/Module/check/$(1)
81gb_Module_get_subsequentcheck_target = $(WORKDIR)/Module/subsequentcheck/$(1)
82gb_Module_get_target = $(WORKDIR)/Module/$(1)
83gb_NoexPrecompiledHeader_get_dep_target = $(WORKDIR)/Dep/NoexPrecompiledHeader/$(gb_NoexPrecompiledHeader_DEBUGDIR)/$(1).hxx.pch.d
84gb_NoexPrecompiledHeader_get_target = $(WORKDIR)/NoexPrecompiledHeader/$(gb_NoexPrecompiledHeader_DEBUGDIR)/$(1).hxx.pch
85gb_ObjCxxObject_get_target = $(WORKDIR)/ObjCxxObject/$(1).o
86gb_Package_get_preparation_target = $(WORKDIR)/Package/prepared/$(1)
87gb_Package_get_target = $(WORKDIR)/Package/$(1)
88gb_PrecompiledHeader_get_dep_target = $(WORKDIR)/Dep/PrecompiledHeader/$(gb_PrecompiledHeader_DEBUGDIR)/$(1).hxx.pch.d
89gb_PrecompiledHeader_get_target = $(WORKDIR)/PrecompiledHeader/$(gb_PrecompiledHeader_DEBUGDIR)/$(1).hxx.pch
90gb_ResTarget_get_imagelist_target = $(WORKDIR)/ResTarget/$(1).ilst
91gb_ResTarget_get_target = $(WORKDIR)/ResTarget/$(1).res
92gb_SdiTarget_get_target = $(WORKDIR)/SdiTarget/$(1)
93gb_SrsPartMergeTarget_get_target = $(WORKDIR)/SrsPartMergeTarget/$(1)
94gb_SrsPartTarget_get_target = $(WORKDIR)/SrsPartTarget/$(1)
95gb_SrsTarget_get_target = $(WORKDIR)/SrsTarget/$(1).srs
96gb_WinResTarget_get_target = $(WORKDIR)/WinResTarget/$(1)$(gb_WinResTarget_POSTFIX)
97gb_Zip_get_target = $(WORKDIR)/Zip/$(1).zip
98gb_Zip_get_final_target = $(WORKDIR)/Zip/$(1).done
99
100define gb_Library_get_external_headers_target
101$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES)))
102endef
103
104define gb_Library_get_headers_target
105$(patsubst $(1):%,$(WORKDIR)/Headers/Library/%,$(filter $(1):%,$(gb_Library_FILENAMES)))
106endef
107
108define gb_StaticLibrary_get_external_headers_target
109$(patsubst $(1):%,$(WORKDIR)/ExternalHeaders/StaticLibrary/%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES)))
110endef
111
112define gb_StaticLibrary_get_headers_target
113$(patsubst $(1):%,$(WORKDIR)/Headers/StaticLibrary/%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES)))
114endef
115
116$(eval $(call gb_Helper_make_clean_targets,\
117	AllLangResTarget \
118	Ant \
119	ComponentTarget \
120	JavaClassSet \
121	Jar \
122	JunitTest \
123	LinkTarget \
124	Module \
125	WinResTarget \
126	NoexPrecompiledHeader \
127	PackagePart \
128	PrecompiledHeader \
129	ResTarget \
130	SdiTarget \
131	SrsTarget \
132	GoogleTest \
133	CustomTarget \
134	UnoApiTarget \
135	Zip \
136))
137
138$(eval $(call gb_Helper_make_outdir_clean_targets,\
139	Executable \
140	Library \
141	Package \
142	StaticLibrary \
143	UnoApiOutTarget \
144))
145
146$(eval $(call gb_Helper_make_dep_targets,\
147	CObject \
148	CxxObject \
149	ObjCxxObject \
150	GenCxxObject \
151	LinkTarget \
152	SrsPartTarget \
153	SrsTarget \
154	UnoApiTarget \
155))
156
157# other getters
158
159define gb_Library_get_layer
160$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_LAYER)))
161endef
162
163define gb_Executable_get_layer
164$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Executable_LAYER)))
165endef
166
167define gb_Library_get_filename
168$(patsubst $(1):%,%,$(filter $(1):%,$(gb_Library_FILENAMES)))
169endef
170
171define gb_StaticLibrary_get_filename
172$(patsubst $(1):%,%,$(filter $(1):%,$(gb_StaticLibrary_FILENAMES)))
173endef
174
175
176# static members declared here because they are used globally
177
178gb_Library_OUTDIRLOCATION = $(OUTDIR)/lib
179gb_Library_DLLDIR = $(WORKDIR)/LinkTarget/Library
180gb_StaticLibrary_OUTDIRLOCATION = $(OUTDIR)/lib
181
182# vim: set noet sw=4 ts=4:
183