Author: arist Date: Wed Nov 14 23:26:36 2012 New Revision: 1409546 URL: http://svn.apache.org/viewvc?rev=1409546&view=rev Log: gnumake4_048_3c843d4c457b.patch # HG changeset patch # User Michael Stahl <m...@openoffice.org> # Date 1301690824 0 # Node ID 3c843d4c457b1d93d1bc3e9cde772280f4c10b58 # Parent ce56f9735b9cd04f4e2724754fe7c11d9cec1ca9 gnumake4: #i117340#: JavaClassSet: replace broken multi-repo support with explicit constructor parameter.
Modified: incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.mk incubator/ooo/branches/gbuild/main/solenv/gbuild/JunitTest.mk Modified: incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk URL: http://svn.apache.org/viewvc/incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk?rev=1409546&r1=1409545&r2=1409546&view=diff ============================================================================== --- incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk (original) +++ incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk Wed Nov 14 23:26:36 2012 @@ -81,7 +81,7 @@ $(call gb_Jar_get_target,$(1)) : CLASSPA $(call gb_Jar_get_target,$(1)) : MANIFEST := $(call gb_Jar_get_target,$(1)) : JARCLASSPATH := $(call gb_Jar_get_target,$(1)) : PACKAGEROOTS := -$(call gb_JavaClassSet_JavaClassSet,$(call gb_Jar_get_classsetname,$(1))) +$(call gb_JavaClassSet_JavaClassSet,$(call gb_Jar_get_classsetname,$(1)),$(2)) $(eval $(call gb_Module_register_target,$(call gb_Jar_get_final_target,$(1)),$(call gb_Jar_get_clean_target,$(1)))) $(call gb_Deliver_add_deliverable,$(call gb_Jar_get_outdir_target,$(1)),$(call gb_Jar_get_target,$(1)),$(1)) $(call gb_Jar_get_outdir_target,$(1)) : $(call gb_Jar_get_target,$(1)) Modified: incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.mk URL: http://svn.apache.org/viewvc/incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.mk?rev=1409546&r1=1409545&r2=1409546&view=diff ============================================================================== --- incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.mk (original) +++ incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.mk Wed Nov 14 23:26:36 2012 @@ -34,36 +34,32 @@ $(call gb_Helper_abbreviate_dirs_native, endef -define gb_JavaClassSet__rules -$$(call gb_JavaClassSet_get_repo_target,$(1),%) : - $$(call gb_JavaClassSet__command,$$@,$$*,$$?,$$^) - -$$(call gb_JavaClassSet_get_target,%) : $$(call gb_JavaClassSet_get_repo_target,$(1),%) - $$(call gb_Output_announce,$$*,$$(true),JCS,3) - $$(call gb_Helper_abbreviate_dirs,\ - touch $$@) - -endef +$(call gb_JavaClassSet_get_target,%) : + $(call gb_Output_announce,$*,$(true),JCS,3) + $(call gb_JavaClassSet__command,$@,$*,$?,$^) $(call gb_JavaClassSet_get_clean_target,%) : $(call gb_Output_announce,$*,$(false),JCS,3) $(call gb_Helper_abbreviate_dirs,\ rm -rf $(dir $(call gb_JavaClassSet_get_target,$*))) -$(foreach reponame,$(gb_JavaClassSet_REPOSITORYNAMES),$(eval $(call gb_JavaClassSet__rules,$(reponame)))) - # no initialization of scoped variable CLASSPATH as it is "inherited" from controlling instance (e.g. JUnitTest, Jar) +# UGLY: cannot use target local variable for REPO because it's needed in prereq define gb_JavaClassSet_JavaClassSet +$(if $(filter $(2),$(gb_JavaClassSet_REPOSITORYNAMES)),,\ + $(error JavaClassSet: no or invalid repository given; known repositories: \ + $(gb_JavaClassSet_REPOSITORYNAMES))) +gb_JavaClassSet_REPO_$(1) := $(2) $(call gb_JavaClassSet_get_target,$(1)) : JARDEPS := endef define gb_JavaClassSet__get_sourcefile -$(1)/$(2).java +$($(1))/$(2).java endef define gb_JavaClassSet_add_sourcefile -$(foreach reponame,$(gb_JavaClassSet_REPOSITORYNAMES),\ - $(eval $(call gb_JavaClassSet_get_repo_target,$(reponame),$(1)) : $(call gb_JavaClassSet__get_sourcefile,$($(reponame)),$(2)))) +$(eval $(call gb_JavaClassSet_get_target,$(1)) : \ + $(call gb_JavaClassSet__get_sourcefile,$(gb_JavaClassSet_REPO_$(1)),$(2))) endef define gb_JavaClassSet_add_sourcefiles @@ -77,9 +73,8 @@ endef # problem: currently we can't get these dependencies to work # build order dependency is a hack to get these prerequisites out of the way in the build command define gb_JavaClassSet_add_jar -$(foreach reponame,$(gb_JavaClassSet_REPOSITORYNAMES),\ -$(eval $(call gb_JavaClassSet_get_repo_target,$(reponame),$(1)) : $(2)) -$(eval $(call gb_JavaClassSet_get_repo_target,$(reponame),$(1)) : JARDEPS += $(2))) +$(eval $(call gb_JavaClassSet_get_target,$(1)) : $(2)) +$(eval $(call gb_JavaClassSet_get_target,$(1)) : JARDEPS += $(2)) endef Modified: incubator/ooo/branches/gbuild/main/solenv/gbuild/JunitTest.mk URL: http://svn.apache.org/viewvc/incubator/ooo/branches/gbuild/main/solenv/gbuild/JunitTest.mk?rev=1409546&r1=1409545&r2=1409546&view=diff ============================================================================== --- incubator/ooo/branches/gbuild/main/solenv/gbuild/JunitTest.mk (original) +++ incubator/ooo/branches/gbuild/main/solenv/gbuild/JunitTest.mk Wed Nov 14 23:26:36 2012 @@ -50,7 +50,7 @@ $(call gb_JunitTest_get_target,$(1)) : C $(call gb_JunitTest_get_target,$(1)) : CLASSES := $(call gb_JunitTest_JunitTest_platform,$(1)) -$(call gb_JavaClassSet_JavaClassSet,$(call gb_JunitTest_get_classsetname,$(1))) +$(call gb_JavaClassSet_JavaClassSet,$(call gb_JunitTest_get_classsetname,$(1)),$(2)) $(call gb_JunitTest_get_target,$(1)) : $(call gb_JavaClassSet_get_target,$(call gb_JunitTest_get_classsetname,$(1))) $(eval $(call gb_Module_register_target,$(call gb_JunitTest_get_target,$(1)),$(call gb_JunitTest_get_clean_target,$(1)))) endef