[Libreoffice-commits] core.git: 7 commits - cli_ure/CliNativeLibrary_cli_cppuhelper.mk cli_ure/Executable_climaker.mk cli_ure/Library_cli_cppuhelper_native.mk cli_ure/Library_cli_uno.mk cli_ure/Module_cli_ure.mk cli_ure/Package_cli_basetypes_copy.mk cli_ure/Package_config.mk cli_ure/source Makefile.in odk/Package_cli.mk Repository.mk solenv/gbuild testtools/CustomTarget_bridgetest_climaker.mk unoil/CliUnoApi_oootypes.mk unoil/CustomTarget_climaker.mk unoil/Module_unoil.mk unoil/Package_climaker.mk

Michael Stahl mstahl at redhat.com
Mon Oct 28 06:08:53 PDT 2013


 Makefile.in                                   |    2 
 Repository.mk                                 |    2 
 cli_ure/CliNativeLibrary_cli_cppuhelper.mk    |   12 +-
 cli_ure/Executable_climaker.mk                |    2 
 cli_ure/Library_cli_cppuhelper_native.mk      |    2 
 cli_ure/Library_cli_uno.mk                    |    2 
 cli_ure/Module_cli_ure.mk                     |    1 
 cli_ure/Package_cli_basetypes_copy.mk         |    4 
 cli_ure/Package_config.mk                     |   17 ---
 cli_ure/source/climaker/climaker.exe.config   |   10 -
 odk/Package_cli.mk                            |   12 +-
 solenv/gbuild/CliAssembly.mk                  |    4 
 solenv/gbuild/CliLibrary.mk                   |  131 ++++++--------------------
 solenv/gbuild/CliNativeLibrary.mk             |  105 +++++++-------------
 solenv/gbuild/CliUnoApi.mk                    |  125 +++++++-----------------
 solenv/gbuild/TargetLocations.mk              |   21 +---
 testtools/CustomTarget_bridgetest_climaker.mk |    4 
 unoil/CliUnoApi_oootypes.mk                   |   29 +++++
 unoil/CustomTarget_climaker.mk                |   57 -----------
 unoil/Module_unoil.mk                         |    3 
 unoil/Package_climaker.mk                     |   16 ---
 21 files changed, 172 insertions(+), 389 deletions(-)

New commits:
commit 3af414b48b2882636de3ab8c84ab4c514daf6235
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 12:54:49 2013 +0100

    gbuild: deliver CLI config and policy files to INSTDIR
    
    Change-Id: I93aaf87b53c17fb143e6e6ae0bca60777dbb3eb5

diff --git a/solenv/gbuild/CliAssembly.mk b/solenv/gbuild/CliAssembly.mk
index f8c6fdb..7c6e3b7 100644
--- a/solenv/gbuild/CliAssembly.mk
+++ b/solenv/gbuild/CliAssembly.mk
@@ -148,9 +148,11 @@ $(call gb_CliAssembly_get_clean_target,%) :
 	$(call gb_Output_announce,$*,$(false),CLA,3)
 	rm -f $(call gb_CliAssembly_get_target,$*)
 
+# call gb_CliAssembly_CliAssembly,dllname,dlltarget
 define gb_CliAssembly_CliAssembly
 $(call gb_CliAssemblyTarget_CliAssemblyTarget,$(1))
 $(call gb_Package_Package_internal,$(1)_assembly,$(WORKDIR))
+$(call gb_Package_set_outdir,$(1)_assembly,$(dir $(2)))
 
 $(call gb_CliAssembly_get_target,$(1)) : $(call gb_CliAssemblyTarget_get_target,$(1))
 $(call gb_CliAssembly_get_target,$(1)) :| $(call gb_Package_get_target,$(1)_assembly)
@@ -160,7 +162,7 @@ $(call gb_CliAssembly_get_clean_target,$(1)) : $(call gb_Package_get_clean_targe
 endef
 
 define gb_CliAssembly__add_file
-$(call gb_Package_add_file,$(1)_assembly,bin/$(notdir $(2)),$(subst $(WORKDIR)/,,$(2)))
+$(call gb_Package_add_file,$(1)_assembly,$(notdir $(2)),$(subst $(WORKDIR)/,,$(2)))
 
 endef
 
diff --git a/solenv/gbuild/CliLibrary.mk b/solenv/gbuild/CliLibrary.mk
index bdfdf54..3883e7f 100644
--- a/solenv/gbuild/CliLibrary.mk
+++ b/solenv/gbuild/CliLibrary.mk
@@ -61,7 +61,7 @@ $(call gb_CliLibrary_get_clean_target,%) :
 #
 # gb_CliLibrary_CliLibrary target
 define gb_CliLibrary_CliLibrary
-$(call gb_CliAssembly_CliAssembly,$(1))
+$(call gb_CliAssembly_CliAssembly,$(1),$(call gb_CliLibrary_get_target,$(1)))
 
 $(call gb_CliLibrary_get_target,$(1)) : CLI_ASSEMBLIES :=
 $(call gb_CliLibrary_get_target,$(1)) : CLI_SOURCES :=
diff --git a/solenv/gbuild/CliNativeLibrary.mk b/solenv/gbuild/CliNativeLibrary.mk
index 84c19c1..be28621 100644
--- a/solenv/gbuild/CliNativeLibrary.mk
+++ b/solenv/gbuild/CliNativeLibrary.mk
@@ -39,7 +39,7 @@ $(call gb_CliNativeLibrary_get_clean_target,%) :
 #
 # CliNativeLibrary target
 define gb_CliNativeLibrary_CliNativeLibrary
-$(call gb_CliAssembly_CliAssembly,$(1))
+$(call gb_CliAssembly_CliAssembly,$(1),$(call gb_CliNativeLibrary_get_target,$(1)))
 
 $(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_ASSEMBLIES := $(gb_Helper_MISCDUMMY)
 $(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_KEYFILE :=
diff --git a/solenv/gbuild/CliUnoApi.mk b/solenv/gbuild/CliUnoApi.mk
index 1ce3844..16f331b 100644
--- a/solenv/gbuild/CliUnoApi.mk
+++ b/solenv/gbuild/CliUnoApi.mk
@@ -43,7 +43,7 @@ $(call gb_CliUnoApi_get_clean_target,%) :
 #
 # gb_CliUnoApi_CliUnoApi target
 define gb_CliUnoApi_CliUnoApi
-$(call gb_CliAssembly_CliAssembly,$(1))
+$(call gb_CliAssembly_CliAssembly,$(1),$(call gb_CliUnoApi_get_target,$(1)))
 
 $(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_API :=
 $(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_ASSEMBLIES :=
commit e5eac916e89d064fa2bb48b17e121e35da1141fc
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 12:41:00 2013 +0100

    cli_ure: remove Package_config
    
    - cliuno.snk is used from SRCDIR
    - climaker.exe.config is not packaged and appears unnecessary
    
    Change-Id: Ia0e364bd3b488841aeb8ae75c26aa0cd4ff86012

diff --git a/cli_ure/Module_cli_ure.mk b/cli_ure/Module_cli_ure.mk
index 0c2e9da..0bd1093 100644
--- a/cli_ure/Module_cli_ure.mk
+++ b/cli_ure/Module_cli_ure.mk
@@ -23,7 +23,6 @@ $(eval $(call gb_Module_add_targets,cli_ure,\
 	Executable_climaker \
 	Library_cli_cppuhelper_native \
 	Library_cli_uno \
-	Package_config \
 	Package_cli_basetypes_copy \
 ))
 endif
diff --git a/cli_ure/Package_config.mk b/cli_ure/Package_config.mk
deleted file mode 100644
index 175fd33..0000000
--- a/cli_ure/Package_config.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Package_Package,cli_ure_cliuno,$(SRCDIR)/cli_ure/source))
-
-$(eval $(call gb_Package_add_files,cli_ure_cliuno,bin,\
-	climaker/climaker.exe.config \
-	cliuno.snk \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/cli_ure/source/climaker/climaker.exe.config b/cli_ure/source/climaker/climaker.exe.config
deleted file mode 100644
index 5ff0351..0000000
--- a/cli_ure/source/climaker/climaker.exe.config
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0"?>
-<configuration>
-  <runtime>
-    <gcConcurrent enabled="true" />
-    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
-      <publisherPolicy apply="no" />
-      <probing privatePath="" />
-    </assemblyBinding>
-  </runtime>
-</configuration>
\ No newline at end of file
commit d1a06bc2b48de471fc2d7516f13c017b9da009b7
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 11:31:45 2013 +0100

    odk: adapt to cli_ure/unoil changes
    
    Change-Id: I9fec64c247de793ae30434c615752f48d1bc2205

diff --git a/odk/Package_cli.mk b/odk/Package_cli.mk
index 49274de..99e7211 100644
--- a/odk/Package_cli.mk
+++ b/odk/Package_cli.mk
@@ -7,16 +7,16 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 #
 
-$(eval $(call gb_Package_Package,odk_cli,$(OUTDIR)/bin))
+$(eval $(call gb_Package_Package,odk_cli,$(INSTROOT)))
 
 $(eval $(call gb_Package_set_outdir,odk_cli,$(INSTDIR)))
 
 $(eval $(call gb_Package_add_files,odk_cli,$(SDKDIRNAME)/cli,\
-	assembly/cli_cppuhelper.dll \
-	cli_basetypes.dll \
-	cli_oootypes.dll \
-	cli_ure.dll \
-	cli_uretypes.dll \
+	$(LIBO_URE_LIB_FOLDER)/cli_cppuhelper.dll \
+	$(LIBO_URE_LIB_FOLDER)/cli_basetypes.dll \
+	$(LIBO_URE_LIB_FOLDER)/cli_ure.dll \
+	$(LIBO_URE_LIB_FOLDER)/cli_uretypes.dll \
+	$(LIBO_LIB_FOLDER)/cli_oootypes.dll \
 ))
 
 # vim: set noet sw=4 ts=4:
commit ab74a8303949c1dca8f453fa10497f0b8c4dd7d6
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 11:19:24 2013 +0100

    unoil: build cli_oootypes.dll via CliUnoApi
    
    Change-Id: I9f6a410515106941c4848edafaffaeacbc27b125

diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index ce62330..6e0103e 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -22,7 +22,7 @@
 # thoese are hard-coded to URE for now since there are so few of them...
 gb_CliLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliLibrary_EXT)
 gb_CliNativeLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliNativeLibrary_EXT)
-gb_CliUnoApi_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliUnoApi_EXT)
+gb_CliUnoApi_get_target = $(INSTROOT)/$(if $(filter cli_uretypes,$(1)),$(LIBO_URE_LIB_FOLDER),$(LIBO_LIB_FOLDER))/$(1)$(gb_CliUnoApi_EXT)
 gb_PackagePart_get_destinations = \
 	$(INSTDIR) \
 	$(OUTDIR)/bin \
diff --git a/unoil/CliUnoApi_oootypes.mk b/unoil/CliUnoApi_oootypes.mk
new file mode 100644
index 0000000..46201b7
--- /dev/null
+++ b/unoil/CliUnoApi_oootypes.mk
@@ -0,0 +1,29 @@
+
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+include $(SRCDIR)/unoil/climaker/version.txt
+
+$(eval $(call gb_CliUnoApi_CliUnoApi,cli_oootypes))
+
+$(eval $(call gb_CliUnoApi_set_assembly_version,cli_oootypes,$(CLI_OOOTYPES_NEW_VERSION)))
+
+$(eval $(call gb_CliUnoApi_set_configfile,cli_oootypes,unoil/climaker/cli_oootypes_config))
+
+$(eval $(call gb_CliUnoApi_set_keyfile,cli_oootypes,$(SRCDIR)/cli_ure/source/cliuno.snk))
+
+$(eval $(call gb_CliUnoApi_set_policy,cli_oootypes,$(CLI_OOOTYPES_POLICY_ASSEMBLY),$(CLI_OOOTYPES_POLICY_VERSION)))
+
+$(eval $(call gb_CliUnoApi_wrap_api,cli_oootypes,offapi))
+
+$(eval $(call gb_CliUnoApi_use_api,cli_oootypes,udkapi))
+
+$(eval $(call gb_CliUnoApi_use_assembly,cli_oootypes,cli_uretypes))
+
+# vim: set noet sw=4 ts=4:
diff --git a/unoil/CustomTarget_climaker.mk b/unoil/CustomTarget_climaker.mk
deleted file mode 100644
index 016f662..0000000
--- a/unoil/CustomTarget_climaker.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-include $(SRCDIR)/unoil/climaker/version.txt
-
-$(eval $(call gb_CustomTarget_CustomTarget,unoil/climaker))
-
-unoil_CLIDIR := $(call gb_CustomTarget_get_workdir,unoil/climaker)
-
-$(call gb_CustomTarget_get_target,unoil/climaker) : \
-	$(unoil_CLIDIR)/cli_oootypes.dll \
-	$(unoil_CLIDIR)/cli_oootypes.config \
-	$(unoil_CLIDIR)/$(CLI_OOOTYPES_POLICY_ASSEMBLY).dll
-
-$(unoil_CLIDIR)/cli_oootypes.dll : $(SRCDIR)/unoil/climaker/version.txt \
-		$(call gb_UnoApiTarget_get_target,offapi) \
-		$(call gb_UnoApiTarget_get_target,udkapi) \
-		$(OUTDIR)/bin/cliuno.snk $(OUTDIR)/bin/cli_uretypes.dll \
-		$(call gb_Executable_get_runtime_dependencies,climaker) \
-		| $(unoil_CLIDIR)/.dir
-	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CLM,1)
-	$(call gb_Helper_abbreviate_dirs, \
-	$(call gb_Helper_execute,climaker \
-		$(if $(filter -s,$(MAKEFLAGS)),,--verbose) \
-		--out $@ \
-		--assembly-version $(CLI_OOOTYPES_NEW_VERSION) \
-		--assembly-company "LibreOffice" \
-		--assembly-description "This assembly contains metadata for the LibreOffice API." \
-		-X $(call gb_UnoApiTarget_get_target,udkapi) \
-		-r $(OUTDIR)/bin/cli_uretypes.dll \
-		--keyfile $(OUTDIR)/bin/cliuno.snk \
-		$(call gb_UnoApiTarget_get_target,offapi)) > /dev/null)
-
-$(unoil_CLIDIR)/cli_oootypes.config : \
-		$(SRCDIR)/unoil/climaker/cli_oootypes_config \
-		$(SRCDIR)/unoil/climaker/version.txt | $(unoil_CLIDIR)/.dir
-	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),PRL,1)
-	$(call gb_Helper_abbreviate_dirs, \
-	perl $(SRCDIR)/solenv/bin/clipatchconfig.pl $^ $@)
-
-$(unoil_CLIDIR)/$(CLI_OOOTYPES_POLICY_ASSEMBLY).dll : \
-		$(unoil_CLIDIR)/cli_oootypes.config \
-		$(unoil_CLIDIR)/cli_oootypes.dll $(OUTDIR)/bin/cliuno.snk
-	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),AL ,1)
-	$(call gb_Helper_abbreviate_dirs, \
-	al -out:$@ \
-		-version:$(CLI_OOOTYPES_POLICY_VERSION) \
-		-keyfile:$(OUTDIR)/bin/cliuno.snk \
-		-link:$<)
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/unoil/Module_unoil.mk b/unoil/Module_unoil.mk
index e8cdbe9..f6bdc70 100644
--- a/unoil/Module_unoil.mk
+++ b/unoil/Module_unoil.mk
@@ -22,8 +22,7 @@ endif
 
 ifeq ($(COM),MSC)
 $(eval $(call gb_Module_add_targets,unoil,\
-    CustomTarget_climaker \
-    Package_climaker \
+    CliUnoApi_oootypes \
 ))
 endif
 
diff --git a/unoil/Package_climaker.mk b/unoil/Package_climaker.mk
deleted file mode 100644
index 77f59ab..0000000
--- a/unoil/Package_climaker.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# This file is part of the LibreOffice project.
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-
-$(eval $(call gb_Package_Package,unoil_climaker,$(WORKDIR)/CustomTarget/unoil/climaker))
-
-$(eval $(call gb_Package_add_file,unoil_climaker,bin/cli_oootypes.config,cli_oootypes.config))
-$(eval $(call gb_Package_add_file,unoil_climaker,bin/cli_oootypes.dll,cli_oootypes.dll))
-$(eval $(call gb_Package_add_file,unoil_climaker,bin/policy.1.0.cli_oootypes.dll,policy.1.0.cli_oootypes.dll))
-
-# vim:set noet sw=4 ts=4:
commit 968c735aa7bcf8d03258e9cea931b9d776e4a890
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 11:01:50 2013 +0100

    gbuild: refactor CliLibrary
    
    - stop copying the DLL to OUTDIR
    - since that was the main reason for the separation between
      CliLibrary and CliLibraryTarget, merge the targets;
      the newly inherited variables are not expected to cause problems
    - hardcode target to URE bin dir for now, no immediate need for
      multiple layers
    
    Change-Id: If0fea1337349c41f231c8cde122852c71d5080a7

diff --git a/cli_ure/Executable_climaker.mk b/cli_ure/Executable_climaker.mk
index f1aaf62..2d99b1f 100644
--- a/cli_ure/Executable_climaker.mk
+++ b/cli_ure/Executable_climaker.mk
@@ -14,7 +14,7 @@ $(eval $(call gb_Executable_use_package,climaker,\
 ))
 
 $(eval $(call gb_Executable_add_cxxflags,climaker,\
-	-AI $(gb_Helper_OUTDIRLIBDIR) \
+	-AI $(INSTDIR)/$(LIBO_URE_LIB_FOLDER) \
 	-clr \
 	-LN \
 	-wd4339 \
diff --git a/cli_ure/Library_cli_cppuhelper_native.mk b/cli_ure/Library_cli_cppuhelper_native.mk
index cc4e628..39c13c8 100644
--- a/cli_ure/Library_cli_cppuhelper_native.mk
+++ b/cli_ure/Library_cli_cppuhelper_native.mk
@@ -14,7 +14,7 @@ $(eval $(call gb_Library_Assembly,cli_cppuhelper))
 # When compiling for CLR, disable "warning C4339: use of undefined type detected
 # in CLR meta-data - use of this type may lead to a runtime exception":
 $(eval $(call gb_Library_add_cxxflags,cli_cppuhelper,\
-	-AI $(gb_Helper_OUTDIRLIBDIR) \
+	-AI $(INSTDIR)/$(LIBO_URE_LIB_FOLDER) \
 	-clr \
 	-wd4339 \
 ))
diff --git a/cli_ure/Library_cli_uno.mk b/cli_ure/Library_cli_uno.mk
index a215e9f..58b2d4f 100644
--- a/cli_ure/Library_cli_uno.mk
+++ b/cli_ure/Library_cli_uno.mk
@@ -10,7 +10,7 @@
 $(eval $(call gb_Library_Library,cli_uno))
 
 $(eval $(call gb_Library_add_cxxflags,cli_uno,\
-	-AI $(gb_Helper_OUTDIRLIBDIR) \
+	-AI $(INSTDIR)/$(LIBO_URE_LIB_FOLDER) \
 	-clr \
 	-wd4339 \
 ))
diff --git a/cli_ure/Package_cli_basetypes_copy.mk b/cli_ure/Package_cli_basetypes_copy.mk
index b0824e3..8cb20ce 100644
--- a/cli_ure/Package_cli_basetypes_copy.mk
+++ b/cli_ure/Package_cli_basetypes_copy.mk
@@ -8,13 +8,13 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 #
 
-$(eval $(call gb_Package_Package,cli_basetypes_copy,$(WORKDIR)))
+$(eval $(call gb_Package_Package,cli_basetypes_copy,$(INSTROOT)))
 
 $(eval $(call gb_Package_set_outdir,cli_basetypes_copy,$(INSTDIR)))
 
 # duplicate copy to work around CLR DLL finding brain damage
 $(eval $(call gb_Package_add_files,cli_basetypes_copy,$(SDKDIRNAME)/bin,\
-	CliLibraryTarget/cli_basetypes.dll \
+	$(LIBO_URE_LIB_FOLDER)/cli_basetypes.dll \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/solenv/gbuild/CliLibrary.mk b/solenv/gbuild/CliLibrary.mk
index 2513494..bdfdf54 100644
--- a/solenv/gbuild/CliLibrary.mk
+++ b/solenv/gbuild/CliLibrary.mk
@@ -7,37 +7,37 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 #
 
-# CliLibraryTarget class
+# CliLibrary class
 
-gb_CliLibraryTarget_EXT := $(gb_CliAssembly_POLICYEXT)
+gb_CliLibrary_EXT := $(gb_CliAssembly_POLICYEXT)
 
-gb_CliLibraryTarget_CSCFLAGS := \
+gb_CliLibrary_CSCFLAGS := \
 	-noconfig \
 	-nologo \
 
-gb_CliLibraryTarget_CSCFLAGS_DEBUG := \
+gb_CliLibrary_CSCFLAGS_DEBUG := \
 	-checked+ \
 	-define:DEBUG \
 	-define:TRACE \
 
 ifeq ($(strip $(debug)),)
 ifeq ($(strip $(ENABLE_DBGUTIL)),TRUE)
-gb_CliLibraryTarget__get_csflags = $(gb_CliLibraryTarget_CSCFLAGS) $(gb_CliLibraryTarget_CSCFLAGS_DEBUG)
+gb_CliLibrary__get_csflags = $(gb_CliLibrary_CSCFLAGS) $(gb_CliLibrary_CSCFLAGS_DEBUG)
 else
-gb_CliLibraryTarget__get_csflags = $(gb_CliLibraryTarget_CSCFLAGS) -o
+gb_CliLibrary__get_csflags = $(gb_CliLibrary_CSCFLAGS) -o
 endif
 else
-gb_CliLibraryTarget__get_csflags = $(gb_CliLibraryTarget_CSCFLAGS) $(gb_CliLibraryTarget_CSCFLAGS_DEBUG) -debug+
+gb_CliLibrary__get_csflags = $(gb_CliLibrary_CSCFLAGS) $(gb_CliLibrary_CSCFLAGS_DEBUG) -debug+
 endif
 
-gb_CliLibraryTarget__get_source = $(SRCDIR)/$(1).cs
-gb_CliLibraryTarget__get_generated_source = $(WORKDIR)/$(1).cs
+gb_CliLibrary__get_source = $(SRCDIR)/$(1).cs
+gb_CliLibrary__get_generated_source = $(WORKDIR)/$(1).cs
 
-define gb_CliLibraryTarget__command
+define gb_CliLibrary__command
 $(call gb_Output_announce,$(2),$(true),CSC,3)
 $(call gb_Helper_abbreviate_dirs,\
 	csc $(call gb_Helper_windows_path, \
-		$(call gb_CliLibraryTarget__get_csflags) \
+		$(call gb_CliLibrary__get_csflags) \
 		$(CLI_CSCFLAGS) \
 		-target:library \
 		-out:$(1) \
@@ -49,100 +49,36 @@ $(call gb_Helper_abbreviate_dirs,\
 )
 endef
 
-$(dir $(call gb_CliLibraryTarget_get_target,%)).dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(dir $(call gb_CliLibraryTarget_get_target,%))%/.dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(call gb_CliLibraryTarget_get_target,%) :
-	$(call gb_CliLibraryTarget__command,$@,$*,$<,$?,$^)
-
-.PHONY : $(call gb_CliLibraryTarget_get_clean_target,%)
-$(call gb_CliLibraryTarget_get_clean_target,%) :
+.PHONY : $(call gb_CliLibrary_get_clean_target,%)
+$(call gb_CliLibrary_get_clean_target,%) :
 	$(call gb_Output_announce,$*,$(false),CSC,3)
 	$(call gb_Helper_abbreviate_dirs,\
-		rm -f $(call gb_CliLibraryTarget_get_target,$*) \
+		rm -f $(call gb_CliLibrary_get_target,$*) \
 	)
 
-# Compiles one or more C# source files
-#
-# gb_CliLibraryTarget_CliLibraryTarget target
-define gb_CliLibraryTarget_CliLibraryTarget
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_ASSEMBLIES :=
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_SOURCES :=
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_CSCFLAGS :=
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_KEYFILE :=
-
-$(call gb_CliLibraryTarget_get_target,$(1)) :| $(dir $(call gb_CliLibraryTarget_get_target,$(1))).dir
-
-endef
-
-define gb_CliLibraryTarget_use_assembly
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_ASSEMBLIES += $(call gb_CliLibrary_get_target,$(2))
-$(call gb_CliLibraryTarget_get_target,$(1)) : $(call gb_CliLibrary_get_target,$(2))
-
-endef
-
-define gb_CliLibraryTarget_use_assemblies
-$(foreach assembly,$(2),$(call gb_CliLibraryTarget_use_assembly,$(1),$(assembly)))
-
-endef
-
-# Add a source file to compile
-define gb_CliLibraryTarget_add_csfile
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_SOURCES += $(call gb_CliLibraryTarget__get_source,$(2))
-$(call gb_CliLibraryTarget_get_target,$(1)) : $(call gb_CliLibraryTarget__get_source,$(2))
-
-endef
-
-# Add source files to compile
-define gb_CliLibraryTarget_add_csfiles
-$(foreach csfile,$(2),$(call gb_CliLibraryTarget_add_csfile,$(1),$(csfile)))
-
-endef
-
-# Add a generated source file to compile
-define gb_CliLibraryTarget_add_generated_csfile
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_SOURCES += $(call gb_CliLibraryTarget__get_generated_source,$(2))
-$(call gb_CliLibraryTarget_get_target,$(1)) : $(call gb_CliLibraryTarget__get_generated_source,$(2))
-
-endef
-
-# Add generated source files to compile
-define gb_CliLibraryTarget_add_generated_csfiles
-$(foreach csfile,$(2),$(call gb_CliLibraryTarget_add_generated_csfile,$(1),$(csfile)))
-
-endef
-
-# Add flags used for compilation
-define gb_CliLibraryTarget_add_csflags
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_CSCFLAGS += $(2)
-
-endef
-
-# CliLibrary class
-
-gb_CliLibrary_EXT := $(gb_CliLibraryTarget_EXT)
 
 # Compiles one or more C# source files
 #
 # gb_CliLibrary_CliLibrary target
 define gb_CliLibrary_CliLibrary
-$(call gb_CliLibraryTarget_CliLibraryTarget,$(1))
 $(call gb_CliAssembly_CliAssembly,$(1))
 
-$(call gb_CliLibrary_get_target,$(1)) : $(call gb_CliLibraryTarget_get_target,$(1))
+$(call gb_CliLibrary_get_target,$(1)) : CLI_ASSEMBLIES :=
+$(call gb_CliLibrary_get_target,$(1)) : CLI_SOURCES :=
+$(call gb_CliLibrary_get_target,$(1)) : CLI_CSCFLAGS :=
+$(call gb_CliLibrary_get_target,$(1)) : CLI_KEYFILE :=
+
+
 $(call gb_CliLibrary_get_target,$(1)) :| $(call gb_CliAssembly_get_target,$(1))
 $(call gb_CliLibrary_get_target,$(1)) :| $(dir $(call gb_CliLibrary_get_target,$(1))).dir
-$(call gb_CliLibrary_get_clean_target,$(1)) : $(call gb_CliLibraryTarget_get_clean_target,$(1))
 $(call gb_CliLibrary_get_clean_target,$(1)) : $(call gb_CliAssembly_get_clean_target,$(1))
 
-$(call gb_Deliver_add_deliverable,$(call gb_CliLibrary_get_target,$(1)),$(call gb_CliLibraryTarget_get_target,$(1)),$(1))
-
 $$(eval $$(call gb_Module_register_target,$(call gb_CliLibrary_get_target,$(1)),$(call gb_CliLibrary_get_clean_target,$(1))))
 $(call gb_Helper_make_userfriendly_targets,$(1),CliLibrary)
 
+$(call gb_CliLibrary_get_target,$(1)) :
+	$$(call gb_CliLibrary__command,$$@,$(1))
+
 endef
 
 define gb_CliLibrary_set_configfile
@@ -151,7 +87,7 @@ $(call gb_CliAssembly_set_configfile,$(1),$(2))
 endef
 
 define gb_CliLibrary_set_keyfile
-$(call gb_CliLibraryTarget_get_target,$(1)) : CLI_KEYFILE := $(2)
+$(call gb_CliLibrary_get_target,$(1)) : CLI_KEYFILE := $(2)
 $(call gb_CliAssembly_set_keyfile,$(1),$(2))
 
 endef
@@ -162,42 +98,45 @@ $(call gb_CliAssembly_set_policy,$(1),$(2),$(3))
 endef
 
 define gb_CliLibrary_use_assembly
-$(call gb_CliLibraryTarget_use_assembly,$(1),$(2))
+$(call gb_CliLibrary_get_target,$(1)) : CLI_ASSEMBLIES += $(call gb_CliLibrary_get_target,$(2))
+$(call gb_CliLibrary_get_target,$(1)) : $(call gb_CliLibrary_get_target,$(2))
 
 endef
 
 define gb_CliLibrary_use_assemblies
-$(call gb_CliLibraryTarget_use_assemblies,$(1),$(2))
+$(foreach assembly,$(2),$(call gb_CliLibrary_use_assembly,$(1),$(assembly)))
 
 endef
 
 # Add a source file to compile
 define gb_CliLibrary_add_csfile
-$(call gb_CliLibraryTarget_add_csfile,$(1),$(2))
+$(call gb_CliLibrary_get_target,$(1)) : CLI_SOURCES += $(call gb_CliLibrary__get_source,$(2))
+$(call gb_CliLibrary_get_target,$(1)) : $(call gb_CliLibrary__get_source,$(2))
 
 endef
 
 # Add source files to compile
 define gb_CliLibrary_add_csfiles
-$(call gb_CliLibraryTarget_add_csfiles,$(1),$(2))
+$(foreach csfile,$(2),$(call gb_CliLibrary_add_csfile,$(1),$(csfile)))
 
 endef
 
 # Add a generated source file to compile
 define gb_CliLibrary_add_generated_csfile
-$(call gb_CliLibraryTarget_add_generated_csfile,$(1),$(2))
+$(call gb_CliLibrary_get_target,$(1)) : CLI_SOURCES += $(call gb_CliLibrary__get_generated_source,$(2))
+$(call gb_CliLibrary_get_target,$(1)) : $(call gb_CliLibrary__get_generated_source,$(2))
 
 endef
 
 # Add generated source files to compile
 define gb_CliLibrary_add_generated_csfiles
-$(call gb_CliLibraryTarget_add_generated_csfiles,$(1),$(2))
+$(foreach csfile,$(2),$(call gb_CliLibrary_add_generated_csfile,$(1),$(csfile)))
 
 endef
 
 # Add flags used for compilation
 define gb_CliLibrary_add_csflags
-$(call gb_CliLibraryTarget_add_csflags,$(1),$(2))
+$(call gb_CliLibrary_get_target,$(1)) : CLI_CSCFLAGS += $(2)
 
 endef
 
diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index dd6658f..ce62330 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -20,7 +20,7 @@
 # outdir target pattern
 
 # thoese are hard-coded to URE for now since there are so few of them...
-gb_CliLibrary_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliLibrary_EXT)
+gb_CliLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliLibrary_EXT)
 gb_CliNativeLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliNativeLibrary_EXT)
 gb_CliUnoApi_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliUnoApi_EXT)
 gb_PackagePart_get_destinations = \
@@ -69,7 +69,6 @@ gb_CliAssembly_get_target = $(WORKDIR)/CliAssembly/$(1).done
 gb_CliAssemblyTarget_get_target = $(WORKDIR)/CliAssemblyTarget/$(1).done
 gb_CliAssemblyTarget_get_assembly_target = $(WORKDIR)/CliAssemblyTarget/$(1)$(gb_CliAssemblyTarget_POLICYEXT)
 gb_CliConfigTarget_get_target = $(WORKDIR)/CliConfigTarget/$(1).config
-gb_CliLibraryTarget_get_target = $(WORKDIR)/CliLibraryTarget/$(1)$(gb_CliLibraryTarget_EXT)
 gb_CliNativeLibrary_get_preparation_target = $(WORKDIR)/CliNativeLibraryTarget/$(1).prepare
 gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component
 gb_ComponentTarget_get_target_for_build = $(WORKDIR_FOR_BUILD)/ComponentTarget/$(1).component
@@ -251,7 +250,7 @@ $(eval $(call gb_Helper_make_clean_targets,\
 	CliAssembly \
 	CliAssemblyTarget \
 	CliConfigTarget \
-	CliLibraryTarget \
+	CliLibrary \
 	CliNativeLibrary \
 	CliUnoApi \
 	ComponentTarget \
@@ -326,7 +325,6 @@ $(eval $(call gb_Helper_make_clean_targets,\
 ))
 
 $(eval $(call gb_Helper_make_outdir_clean_targets,\
-	CliLibrary \
 	InstallScript \
 ))
 
commit 6bd0f9ba9d744b6d269eac72ae62e0bbd122a9a4
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 10:32:03 2013 +0100

    gbuild: refactor CliUnoApi
    
    - stop copying the DLL to OUTDIR
    - since that was the main reason for the separation between
      CliUnoApi and CliUnoApiTarget, merge the targets;
      the newly inherited variables are not expected to cause problems
    - hardcode target to URE bin dir for now, no immediate need for
      multiple layers
    
    Change-Id: I428d801ec7058e1c6374d8162a4118a3fe581978

diff --git a/Makefile.in b/Makefile.in
index 47f507a..9c78dbf 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -104,7 +104,7 @@ gbuild_TARGETS := AllLangHelp \
 	AutoInstall \
 	CliLibrary \
 	CliNativeLibrary \
-	CliUnoApiTarget \
+	CliUnoApi \
 	Configuration \
 	CppunitTest \
 	CustomTarget \
diff --git a/solenv/gbuild/CliUnoApi.mk b/solenv/gbuild/CliUnoApi.mk
index 63ba9e7..1ce3844 100644
--- a/solenv/gbuild/CliUnoApi.mk
+++ b/solenv/gbuild/CliUnoApi.mk
@@ -7,17 +7,19 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 #
 
-# CliUnoApiTarget class
+# CliUnoApi class
+
+gb_CliUnoApi_EXT := $(gb_CliAssembly_POLICYEXT)
 
-gb_CliUnoApiTarget_EXT := $(gb_CliAssembly_POLICYEXT)
+gb_CliUnoApi_KEYFILE_DEFAULT := $(gb_CliAssembly_KEYFILE_DEFAULT)
 
-gb_CliUnoApiTarget_DEPS := $(call gb_Executable_get_runtime_dependencies,climaker)
-gb_CliUnoApiTarget_COMMAND := $(call gb_Executable_get_command,climaker)
+gb_CliUnoApi_DEPS := $(call gb_Executable_get_runtime_dependencies,climaker)
+gb_CliUnoApi_COMMAND := $(call gb_Executable_get_command,climaker)
 
-define gb_CliUnoApiTarget__command
+define gb_CliUnoApi__command
 $(call gb_Output_announce,$(2),$(true),CLI,4)
 $(call gb_Helper_abbreviate_dirs,\
-	$(gb_CliUnoApiTarget_COMMAND) \
+	$(gb_CliUnoApi_COMMAND) \
 		--out $(1) \
 		--assembly-company "LibreOffice" \
 		--assembly-description "This assembly contains metadata for the LibreOffice API." \
@@ -29,96 +31,38 @@ $(call gb_Helper_abbreviate_dirs,\
 )
 endef
 
-$(dir $(call gb_CliUnoApiTarget_get_target,%)).dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(dir $(call gb_CliUnoApiTarget_get_target,%))%/.dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(call gb_CliUnoApiTarget_get_target,%) : $(gb_CliUnoApiTarget_DEPS)
-	$(call gb_CliUnoApiTarget__command,$@,$*,$<)
-
-.PHONY : $(call gb_CliUnoApiTarget_get_clean_target,%)
-$(call gb_CliUnoApiTarget_get_clean_target,%) :
+.PHONY : $(call gb_CliUnoApi_get_clean_target,%)
+$(call gb_CliUnoApi_get_clean_target,%) :
 	$(call gb_Output_announce,$*,$(false),CLI,4)
 	$(call gb_Helper_abbreviate_dirs,\
-		rm -f $(call gb_CliUnoApiTarget_get_target,$*) \
+		rm -f $(call gb_CliUnoApi_get_target,$*) \
 	)
 
-define gb_CliUnoApiTarget_CliUnoApiTarget
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_API :=
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_ASSEMBLIES :=
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_DEPS :=
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_KEYFILE :=
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_VERSION :=
-
-$(call gb_CliUnoApiTarget_get_target,$(1)) :| $(dir $(call gb_CliUnoApiTarget_get_target,$(1))).dir
-
-endef
-
-define gb_CliUnoApiTarget_set_keyfile
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_KEYFILE := $(2)
-$(call gb_CliUnoApiTarget_get_target,$(1)) : $(2)
-
-endef
-
-define gb_CliUnoApiTarget_set_version
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_VERSION := $(2)
-
-endef
-
-define gb_CliUnoApiTarget_wrap_api
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_API := $(call gb_UnoApiTarget_get_target,$(2))
-$(call gb_CliUnoApiTarget_get_target,$(1)) : $(call gb_UnoApiTarget_get_target,$(2))
-
-endef
-
-define gb_CliUnoApiTarget__use_api
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_DEPS += $(2)
-$(call gb_CliUnoApiTarget_get_target,$(1)) : $(2)
-
-endef
-
-define gb_CliUnoApiTarget_use_api
-$(foreach api,$(2),$(call gb_CliUnoApiTarget__use_api,$(1),$(call gb_UnoApiTarget_get_target,$(api))))
-
-endef
-
-define gb_CliUnoApiTarget_use_assembly
-$(call gb_CliUnoApiTarget_get_target,$(1)) : CLI_UNOAPI_ASSEMBLIES += $(call gb_CliUnoApi_get_target,$(2))
-$(call gb_CliUnoApiTarget_get_target,$(1)) : $(call gb_CliUnoApi_get_target,$(2))
-
-endef
-
-define gb_CliUnoApiTarget_use_assemblies
-$(foreach assembly,$(2),$(call gb_CliUnoApiTarget_use_assembly,$(1),$(assembly)))
-
-endef
-
-# CliUnoApi class
-
-gb_CliUnoApi_EXT := $(gb_CliUnoApiTarget_EXT)
-gb_CliUnoApi_KEYFILE_DEFAULT := $(gb_CliAssembly_KEYFILE_DEFAULT)
 
 # Create a CLI library for UNO API
 #
 # gb_CliUnoApi_CliUnoApi target
 define gb_CliUnoApi_CliUnoApi
-$(call gb_CliUnoApiTarget_CliUnoApiTarget,$(1))
 $(call gb_CliAssembly_CliAssembly,$(1))
 
-$(call gb_CliUnoApiTarget_set_keyfile,$(1),$(gb_CliUnoApi_KEYFILE_DEFAULT))
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_API :=
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_ASSEMBLIES :=
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_DEPS :=
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_KEYFILE :=
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_VERSION :=
+
+$(call gb_CliUnoApi_set_keyfile,$(1),$(gb_CliUnoApi_KEYFILE_DEFAULT))
 
-$(call gb_CliUnoApi_get_target,$(1)) : $(call gb_CliUnoApiTarget_get_target,$(1))
 $(call gb_CliUnoApi_get_target,$(1)) :| $(call gb_CliAssembly_get_target,$(1))
 $(call gb_CliUnoApi_get_target,$(1)) :| $(dir $(call gb_CliUnoApi_get_target,$(1))).dir
-$(call gb_CliUnoApi_get_clean_target,$(1)) : $(call gb_CliUnoApiTarget_get_clean_target,$(1))
 $(call gb_CliUnoApi_get_clean_target,$(1)) : $(call gb_CliAssembly_get_clean_target,$(1))
 
-$(call gb_Deliver_add_deliverable,$(call gb_CliUnoApi_get_target,$(1)),$(call gb_CliUnoApiTarget_get_target,$(1)),$(1))
+$$(eval $$(call gb_Module_register_target,$(call gb_CliUnoApi_get_target,$(1)),$(call gb_CliUnoApi_get_clean_target,$(1))))
+$(call gb_Helper_make_userfriendly_targets,$(1),CliUnoApi)
 
-$$(eval $$(call gb_Module_register_target,$(call gb_CliUnoApiTarget_get_target,$(1)),$(call gb_CliUnoApiTarget_get_clean_target,$(1))))
-$(call gb_Helper_make_userfriendly_targets,$(1),CliUnoApiTarget)
+
+$(call gb_CliUnoApi_get_target,$(1)) : $(gb_CliUnoApi_DEPS)
+	$$(call gb_CliUnoApi__command,$$@,$(1))
 
 endef
 
@@ -128,13 +72,14 @@ $(call gb_CliAssembly_set_configfile,$(1),$(2))
 endef
 
 define gb_CliUnoApi_set_keyfile
-$(call gb_CliUnoApiTarget_set_keyfile,$(1),$(2))
 $(call gb_CliAssembly_set_keyfile,$(1),$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_KEYFILE := $(2)
+$(call gb_CliUnoApi_get_target,$(1)) : $(2)
 
 endef
 
 define gb_CliUnoApi_set_assembly_version
-$(call gb_CliUnoApiTarget_set_version,$(1),$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_VERSION := $(2)
 
 endef
 
@@ -144,22 +89,30 @@ $(call gb_CliAssembly_set_policy,$(1),$(2),$(3))
 endef
 
 define gb_CliUnoApi_wrap_api
-$(call gb_CliUnoApiTarget_wrap_api,$(1),$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_API := $(call gb_UnoApiTarget_get_target,$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : $(call gb_UnoApiTarget_get_target,$(2))
+
+endef
+
+define gb_CliUnoApi__use_api
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_DEPS += $(2)
+$(call gb_CliUnoApi_get_target,$(1)) : $(2)
 
 endef
 
 define gb_CliUnoApi_use_api
-$(call gb_CliUnoApiTarget_use_api,$(1),$(2))
+$(foreach api,$(2),$(call gb_CliUnoApi__use_api,$(1),$(call gb_UnoApiTarget_get_target,$(api))))
 
 endef
 
 define gb_CliUnoApi_use_assembly
-$(call gb_CliUnoApiTarget_use_assembly,$(1),$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : CLI_UNOAPI_ASSEMBLIES += $(call gb_CliUnoApi_get_target,$(2))
+$(call gb_CliUnoApi_get_target,$(1)) : $(call gb_CliUnoApi_get_target,$(2))
 
 endef
 
 define gb_CliUnoApi_use_assemblies
-$(call gb_CliUnoApiTarget_use_assemblies,$(1),$(2))
+$(foreach assembly,$(2),$(call gb_CliUnoApi_use_assembly,$(1),$(assembly)))
 
 endef
 
diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index 878d747..dd6658f 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -22,7 +22,7 @@
 # thoese are hard-coded to URE for now since there are so few of them...
 gb_CliLibrary_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliLibrary_EXT)
 gb_CliNativeLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliNativeLibrary_EXT)
-gb_CliUnoApi_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliUnoApi_EXT)
+gb_CliUnoApi_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliUnoApi_EXT)
 gb_PackagePart_get_destinations = \
 	$(INSTDIR) \
 	$(OUTDIR)/bin \
@@ -71,7 +71,6 @@ gb_CliAssemblyTarget_get_assembly_target = $(WORKDIR)/CliAssemblyTarget/$(1)$(gb
 gb_CliConfigTarget_get_target = $(WORKDIR)/CliConfigTarget/$(1).config
 gb_CliLibraryTarget_get_target = $(WORKDIR)/CliLibraryTarget/$(1)$(gb_CliLibraryTarget_EXT)
 gb_CliNativeLibrary_get_preparation_target = $(WORKDIR)/CliNativeLibraryTarget/$(1).prepare
-gb_CliUnoApiTarget_get_target = $(WORKDIR)/CliUnoApiTarget/$(1)$(gb_CliUnoApiTarget_EXT)
 gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component
 gb_ComponentTarget_get_target_for_build = $(WORKDIR_FOR_BUILD)/ComponentTarget/$(1).component
 gb_Configuration_get_preparation_target = $(WORKDIR)/Configuration/$(1).prepared
@@ -254,7 +253,7 @@ $(eval $(call gb_Helper_make_clean_targets,\
 	CliConfigTarget \
 	CliLibraryTarget \
 	CliNativeLibrary \
-	CliUnoApiTarget \
+	CliUnoApi \
 	ComponentTarget \
 	CustomPackage \
 	DescriptionTranslateTarget \
@@ -328,7 +327,6 @@ $(eval $(call gb_Helper_make_clean_targets,\
 
 $(eval $(call gb_Helper_make_outdir_clean_targets,\
 	CliLibrary \
-	CliUnoApi \
 	InstallScript \
 ))
 
diff --git a/testtools/CustomTarget_bridgetest_climaker.mk b/testtools/CustomTarget_bridgetest_climaker.mk
index 70b5cd2..55c78a9 100644
--- a/testtools/CustomTarget_bridgetest_climaker.mk
+++ b/testtools/CustomTarget_bridgetest_climaker.mk
@@ -17,14 +17,14 @@ $(call gb_CustomTarget_get_target,testtools/bridgetest_climaker) : \
 $(testtools_CLIDIR)/cli_types_bridgetest.dll : \
 		$(call gb_UnoApiTarget_get_target,bridgetest) \
 		$(call gb_UnoApiTarget_get_target,udkapi) \
-		$(OUTDIR)/bin/cli_uretypes.dll \
+		$(call gb_CliUnoApi_get_target,cli_uretypes) \
 		$(call gb_Executable_get_runtime_dependencies,climaker) \
 		| $(testtools_CLIDIR)/.dir
 	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),CLM,1)
 	$(call gb_Helper_abbreviate_dirs, \
 	$(call gb_Helper_execute,climaker) \
 		$(if $(filter -s,$(MAKEFLAGS)),,--verbose) \
-		--out $@ -r $(OUTDIR)/bin/cli_uretypes.dll \
+		--out $@ -r $(call gb_CliUnoApi_get_target,cli_uretypes) \
 		-X $(call gb_UnoApiTarget_get_target,udkapi) \
 		$(call gb_UnoApiTarget_get_target,bridgetest) > /dev/null)
 
commit decf809674a837bfddb5b9a376502927364377e8
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Oct 28 10:01:34 2013 +0100

    fdo#69601: refactor CliNativeLibrary
    
    - stop copying the DLL to OUTDIR
    - since that was the main reason for the separation between
      CliNativeLibrary and CliNativeLibraryTarget, merge the targets;
      the newly inherited variables are not expected to cause problems
    - the Library remains in layer NONE; the derived CliNativeLibrary
      is in INSTDIR
    - hardcode target to URE bin dir for now, no immediate need for
      multiple layers
    
    Change-Id: I3bf4859e8c574f84d69eb43d12ddce0d34b5730c

diff --git a/Repository.mk b/Repository.mk
index 99941ad..c957433 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -494,7 +494,7 @@ $(eval $(call gb_Helper_register_libraries_for_install,PRIVATELIBS_URE,ure, \
 	xmlreader \
 ))
 
-# FIXME fdo#69601
+# this is NONE even though it is actually in URE because it is CliNativeLibrary
 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_NONE, \
 	$(if $(filter MSC,$(COM)),cli_cppuhelper) \
 ))
diff --git a/cli_ure/CliNativeLibrary_cli_cppuhelper.mk b/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
index f9889dc..5bc4f45 100644
--- a/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
+++ b/cli_ure/CliNativeLibrary_cli_cppuhelper.mk
@@ -9,17 +9,17 @@
 
 include $(SRCDIR)/cli_ure/version/version.txt
 
-$(eval $(call gb_CliNativeLibrary_CliNativeLibrary,assembly/cli_cppuhelper))
+$(eval $(call gb_CliNativeLibrary_CliNativeLibrary,cli_cppuhelper))
 
-$(eval $(call gb_CliNativeLibrary_wrap_library,assembly/cli_cppuhelper,cli_cppuhelper))
+$(eval $(call gb_CliNativeLibrary_wrap_library,cli_cppuhelper,cli_cppuhelper))
 
-$(eval $(call gb_CliNativeLibrary_set_configfile,assembly/cli_cppuhelper,cli_ure/source/native/cli_cppuhelper_config))
+$(eval $(call gb_CliNativeLibrary_set_configfile,cli_cppuhelper,cli_ure/source/native/cli_cppuhelper_config))
 
-$(eval $(call gb_CliNativeLibrary_set_keyfile,assembly/cli_cppuhelper,$(SRCDIR)/cli_ure/source/cliuno.snk))
+$(eval $(call gb_CliNativeLibrary_set_keyfile,cli_cppuhelper,$(SRCDIR)/cli_ure/source/cliuno.snk))
 
-$(eval $(call gb_CliNativeLibrary_set_policy,assembly/cli_cppuhelper,$(CLI_CPPUHELPER_POLICY_ASSEMBLY),$(CLI_CPPUHELPER_POLICY_VERSION)))
+$(eval $(call gb_CliNativeLibrary_set_policy,cli_cppuhelper,$(CLI_CPPUHELPER_POLICY_ASSEMBLY),$(CLI_CPPUHELPER_POLICY_VERSION)))
 
-$(eval $(call gb_CliNativeLibrary_use_assemblies,assembly/cli_cppuhelper,\
+$(eval $(call gb_CliNativeLibrary_use_assemblies,cli_cppuhelper,\
 	cli_ure \
 	cli_uretypes \
 ))
diff --git a/solenv/gbuild/CliNativeLibrary.mk b/solenv/gbuild/CliNativeLibrary.mk
index b014a18..84c19c1 100644
--- a/solenv/gbuild/CliNativeLibrary.mk
+++ b/solenv/gbuild/CliNativeLibrary.mk
@@ -7,14 +7,15 @@
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 #
 
-# CliNativeLibraryTarget class
+# CliNativeLibrary class
 
-gb_CliNativeLibraryTarget_EXT := $(gb_CliAssembly_POLICYEXT)
+gb_CliNativeLibrary_PLATFORM_DEFAULT := x86
+gb_CliNativeLibrary_EXT := $(gb_CliAssembly_POLICYEXT)
 
-gb_CliNativeLibraryTarget__get_library = $(call gb_CliAssembly_get_dll,$(1))
+gb_CliNativeLibrary__get_library = $(call gb_CliAssembly_get_dll,$(1))
 
-define gb_CliNativeLibraryTarget__command
-$(call gb_Output_announce,$(1),$(true),SN ,4)
+define gb_CliNativeLibrary__command
+$(call gb_Output_announce,$(2),$(true),SN ,4)
 $(call gb_Helper_abbreviate_dirs,\
 	$(GNUCOPY) $(CLI_NATIVE_LIBRARY) $(1).tmp && \
 	sn -R $(1).tmp $(CLI_NATIVE_KEYFILE) && \
@@ -22,86 +23,43 @@ $(call gb_Helper_abbreviate_dirs,\
 )
 endef
 
-$(dir $(call gb_CliNativeLibraryTarget_get_target,%)).dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(dir $(call gb_CliNativeLibraryTarget_get_target,%))%/.dir :
-	$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
-
-$(call gb_CliNativeLibraryTarget_get_target,%) :
-	$(call gb_CliNativeLibraryTarget__command,$@,$*,$<)
+$(call gb_CliNativeLibrary_get_preparation_target,%) :
+	mkdir -p $(dir $@) && touch $@
 
-$(call gb_CliNativeLibraryTarget_get_external_target,%) :
-	touch $@
-
-.PHONY : $(call gb_CliNativeLibraryTarget_get_clean_target,%)
-$(call gb_CliNativeLibraryTarget_get_clean_target,%) :
+.PHONY : $(call gb_CliNativeLibrary_get_clean_target,%)
+$(call gb_CliNativeLibrary_get_clean_target,%) :
 	$(call gb_Output_announce,$*,$(false),SN ,4)
 	$(call gb_Helper_abbreviate_dirs,\
-		rm -rf $(call gb_CliNativeLibraryTarget_get_target,$*) \
-			 $(call gb_CliNativeLibraryTarget_get_external_target,$*) \
+		rm -rf $(call gb_CliNativeLibrary_get_target,$*) \
+			 $(call gb_CliNativeLibrary_get_preparation_target,$*) \
 	)
 
-define gb_CliNativeLibraryTarget_CliNativeLibraryTarget
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_ASSEMBLIES := $(gb_Helper_MISCDUMMY)
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_KEYFILE :=
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_LIBRARY :=
-
-$(call gb_CliNativeLibraryTarget_get_external_target,$(1)) :| $(dir $(call gb_CliNativeLibraryTarget_get_target,$(1))).dir
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) :| $(dir $(call gb_CliNativeLibraryTarget_get_target,$(1))).dir
-
-endef
-
-define gb_CliNativeLibraryTarget_wrap_library
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_LIBRARY := $(call gb_CliNativeLibraryTarget__get_library,$(2))
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : $(call gb_Library_get_target,$(2))
-$(call gb_Library_get_headers_target,$(2)) : $(call gb_CliNativeLibraryTarget_get_external_target,$(1))
-
-endef
-
-define gb_CliNativeLibraryTarget_set_keyfile
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_KEYFILE := $(2)
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : $(2)
-
-endef
-
-define gb_CliNativeLibraryTarget_use_assembly
-$(call gb_CliNativeLibraryTarget_get_target,$(1)) : CLI_NATIVE_ASSEMBLIES += $(call gb_CliLibrary_get_target,$(2))
-$(call gb_CliNativeLibraryTarget_get_external_target,$(1)) : $(call gb_CliLibrary_get_target,$(2))
-
-endef
-
-define gb_CliNativeLibraryTarget_use_assemblies
-$(foreach assembly,$(2),$(call gb_CliNativeLibraryTarget_use_assembly,$(1),$(assembly)))
-
-endef
-
-# CliNativeLibrary class
-
-gb_CliNativeLibrary_PLATFORM_DEFAULT := x86
-gb_CliNativeLibrary_EXT := $(gb_CliNativeLibraryTarget_EXT)
 
 # Create a CLI library for a native library
 #
 # CliNativeLibrary target
 define gb_CliNativeLibrary_CliNativeLibrary
-$(call gb_CliNativeLibraryTarget_CliNativeLibraryTarget,$(1))
 $(call gb_CliAssembly_CliAssembly,$(1))
 
-$(call gb_CliNativeLibraryTarget_set_keyfile,$(1),$(gb_CliAssembly_KEYFILE_DEFAULT))
+$(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_ASSEMBLIES := $(gb_Helper_MISCDUMMY)
+$(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_KEYFILE :=
+$(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_LIBRARY :=
+
+
+$(call gb_CliNativeLibrary_set_keyfile,$(1),$(gb_CliAssembly_KEYFILE_DEFAULT))
 $(call gb_CliAssembly_set_platform,$(1),$(gb_CliNativeLibrary_PLATFORM_DEFAULT))
 
-$(call gb_CliNativeLibrary_get_target,$(1)) : $(call gb_CliNativeLibraryTarget_get_target,$(1))
 $(call gb_CliNativeLibrary_get_target,$(1)) :| $(call gb_CliAssembly_get_target,$(1))
 $(call gb_CliNativeLibrary_get_target,$(1)) :| $(dir $(call gb_CliNativeLibrary_get_target,$(1))).dir
-$(call gb_CliNativeLibrary_get_clean_target,$(1)) : $(call gb_CliNativeLibraryTarget_get_clean_target,$(1))
 $(call gb_CliNativeLibrary_get_clean_target,$(1)) : $(call gb_CliAssembly_get_clean_target,$(1))
 
-$(call gb_Deliver_add_deliverable,$(call gb_CliNativeLibrary_get_target,$(1)),$(call gb_CliNativeLibraryTarget_get_target,$(1)),$(1))
-
 $$(eval $$(call gb_Module_register_target,$(call gb_CliNativeLibrary_get_target,$(1)),$(call gb_CliNativeLibrary_get_clean_target,$(1))))
 $(call gb_Helper_make_userfriendly_targets,$(1),CliNativeLibrary)
 
+$(call gb_CliNativeLibrary_get_target,$(1)) :
+	$$(call gb_CliNativeLibrary__command,$$@,$(1))
+
+
 endef
 
 define gb_CliNativeLibrary_set_configfile
@@ -110,8 +68,9 @@ $(call gb_CliAssembly_set_configfile,$(1),$(2))
 endef
 
 define gb_CliNativeLibrary_set_keyfile
-$(call gb_CliNativeLibraryTarget_set_keyfile,$(1),$(2))
 $(call gb_CliAssembly_set_keyfile,$(1),$(2))
+$(call gb_CliNativeLibrary_get_target,$(1)) : CLI_NATIVE_KEYFILE := $(2)
+$(call gb_CliNativeLibrary_get_target,$(1)) : $(2)
 
 endef
 
@@ -126,17 +85,25 @@ $(call gb_CliAssembly_set_policy,$(1),$(2),$(3))
 endef
 
 define gb_CliNativeLibrary_wrap_library
-$(call gb_CliNativeLibraryTarget_wrap_library,$(1),$(2))
+$(call gb_CliNativeLibrary_get_target,$(1)) : \
+	CLI_NATIVE_LIBRARY := $(call gb_CliNativeLibrary__get_library,$(2))
+$(call gb_CliNativeLibrary_get_target,$(1)) : \
+	$(call gb_Library_get_target,$(2))
+$(call gb_Library_get_headers_target,$(2)) : \
+	$(call gb_CliNativeLibrary_get_preparation_target,$(1))
 
 endef
 
 define gb_CliNativeLibrary_use_assembly
-$(call gb_CliNativeLibraryTarget_use_assembly,$(1),$(2))
+$(call gb_CliNativeLibrary_get_target,$(1)) : \
+	CLI_NATIVE_ASSEMBLIES += $(call gb_CliLibrary_get_target,$(2))
+$(call gb_CliNativeLibrary_get_preparation_target,$(1)) : \
+	$(call gb_CliLibrary_get_target,$(2))
 
 endef
 
 define gb_CliNativeLibrary_use_assemblies
-$(call gb_CliNativeLibraryTarget_use_assemblies,$(1),$(2))
+$(foreach assembly,$(2),$(call gb_CliNativeLibrary_use_assembly,$(1),$(assembly)))
 
 endef
 
diff --git a/solenv/gbuild/TargetLocations.mk b/solenv/gbuild/TargetLocations.mk
index 1340593..878d747 100644
--- a/solenv/gbuild/TargetLocations.mk
+++ b/solenv/gbuild/TargetLocations.mk
@@ -19,8 +19,9 @@
 
 # outdir target pattern
 
+# thoese are hard-coded to URE for now since there are so few of them...
 gb_CliLibrary_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliLibrary_EXT)
-gb_CliNativeLibrary_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliNativeLibrary_EXT)
+gb_CliNativeLibrary_get_target = $(INSTROOT)/$(LIBO_URE_LIB_FOLDER)/$(1)$(gb_CliNativeLibrary_EXT)
 gb_CliUnoApi_get_target = $(gb_Helper_OUTDIRLIBDIR)/$(1)$(gb_CliUnoApi_EXT)
 gb_PackagePart_get_destinations = \
 	$(INSTDIR) \
@@ -69,8 +70,7 @@ gb_CliAssemblyTarget_get_target = $(WORKDIR)/CliAssemblyTarget/$(1).done
 gb_CliAssemblyTarget_get_assembly_target = $(WORKDIR)/CliAssemblyTarget/$(1)$(gb_CliAssemblyTarget_POLICYEXT)
 gb_CliConfigTarget_get_target = $(WORKDIR)/CliConfigTarget/$(1).config
 gb_CliLibraryTarget_get_target = $(WORKDIR)/CliLibraryTarget/$(1)$(gb_CliLibraryTarget_EXT)
-gb_CliNativeLibraryTarget_get_external_target = $(WORKDIR)/CliNativeLibraryTarget/$(1).external
-gb_CliNativeLibraryTarget_get_target = $(WORKDIR)/CliNativeLibraryTarget/$(1)$(gb_CliNativeLibraryTarget_EXT)
+gb_CliNativeLibrary_get_preparation_target = $(WORKDIR)/CliNativeLibraryTarget/$(1).prepare
 gb_CliUnoApiTarget_get_target = $(WORKDIR)/CliUnoApiTarget/$(1)$(gb_CliUnoApiTarget_EXT)
 gb_ComponentTarget_get_target = $(WORKDIR)/ComponentTarget/$(1).component
 gb_ComponentTarget_get_target_for_build = $(WORKDIR_FOR_BUILD)/ComponentTarget/$(1).component
@@ -253,7 +253,7 @@ $(eval $(call gb_Helper_make_clean_targets,\
 	CliAssemblyTarget \
 	CliConfigTarget \
 	CliLibraryTarget \
-	CliNativeLibraryTarget \
+	CliNativeLibrary \
 	CliUnoApiTarget \
 	ComponentTarget \
 	CustomPackage \
@@ -328,7 +328,6 @@ $(eval $(call gb_Helper_make_clean_targets,\
 
 $(eval $(call gb_Helper_make_outdir_clean_targets,\
 	CliLibrary \
-	CliNativeLibrary \
 	CliUnoApi \
 	InstallScript \
 ))


More information about the Libreoffice-commits mailing list