Author: arist
Date: Wed Nov 14 23:37:39 2012
New Revision: 1409560

URL: http://svn.apache.org/viewvc?rev=1409560&view=rev
Log:
gnumake4_062_db8ee7ba2cff.patch
# HG changeset patch
# User Michael Stahl <m...@openoffice.org>
# Date 1302528217 0
# Node ID db8ee7ba2cffa1fa60e1fac69bc6369846a0afeb
# Parent  6ae64fc2b62e72e3e6957a96ea9ff0fddbca958e
gnumake4: Jar.mk: move CLASSPATH stuff to JavaClassSet, and add system/external


Modified:
    incubator/ooo/branches/gbuild/main/solenv/gbuild/Jar.mk
    incubator/ooo/branches/gbuild/main/solenv/gbuild/JavaClassSet.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=1409560&r1=1409559&r2=1409560&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:37:39 
2012
@@ -71,11 +71,11 @@ $(call gb_Jar_get_target,%) : $(call gb_
 # adds jar files to DeliverLogTarget
 # adds dependency for outdir target to workdir target (pattern rule for 
delivery is in Package.mk)
 define gb_Jar_Jar
-$(call gb_Jar_get_target,$(1)) : CLASSPATH := $(value XCLASSPATH)
 $(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)),$(2))
+$(call gb_JavaClassSet_set_classpath,$(call 
gb_Jar_get_classsetname,$(1)),$(value XCLASSPATH))
 $(eval $(call gb_Module_register_target,$(call 
gb_Jar_get_outdir_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))
@@ -96,9 +96,8 @@ define gb_Jar_add_sourcefiles
 $(foreach sourcefile,$(2),$(call gb_Jar_add_sourcefile,$(1),$(sourcefile)))
 endef
 
-# don't forward it to ClassSet; the ClassSet "inherits" the classpath from the 
Jar
 define gb_JarTest_set_classpath
-$(call gb_Jar_get_target,$(1)) : CLASSPATH := $(2)
+$(call gb_JavaClassSet_set_classpath,$(call gb_Jar_get_classsetname,$(1)),$(2))
 endef
 
 # JARCLASSPATH is the class path that is written to the manifest of the jar
@@ -118,14 +117,28 @@ endef
 
 # remember: classpath is "inherited" to ClassSet
 define gb_Jar_add_jar
-$(call gb_Jar_get_target,$(1)) : CLASSPATH := 
$$(CLASSPATH)$(gb_CLASSPATHSEP)$(2)
 $(call gb_JavaClassSet_add_jar,$(call gb_Jar_get_classsetname,$(1)),$(2))
+endef
 
+define gb_Jar_add_system_jar
+$(call gb_JavaClassSet_add_system_jar,$(call 
gb_Jar_get_classsetname,$(1)),$(2))
 endef
 
 # specify jars with imported modules
 define gb_Jar_add_jars
-$(foreach jar,$(2),$(call gb_Jar_add_jar,$(1),$(jar)))
+$(call gb_JavaClassSet_add_jars,$(call gb_Jar_get_classsetname,$(1)),$(2))
+endef
+
+define gb_Jar_add_system_jars
+$(call gb_JavaClassSet_add_system_jars,$(call 
gb_Jar_get_classsetname,$(1)),$(2))
+endef
+
+define gb_Jar_use_external
+$(call gb_JavaClassSet_use_external,$(call gb_Jar_get_classsetname,$(1)),$(2))
+endef
+
+define gb_Jar_use_externals
+$(call gb_JavaClassSet_use_externals,$(call gb_Jar_get_classsetname,$(1)),$(2))
 endef
 
 # possible directories for jar files containing UNO services 

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=1409560&r1=1409559&r2=1409560&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:37:39 2012
@@ -67,15 +67,41 @@ $(foreach sourcefile,$(2),$(call gb_Java
 endef
 
 define gb_JavaClassSet_set_classpath
-$(call gb_JavaClassSet_get_target,$(1)) : CLASSPATH := $(2)
+$(eval $(call gb_JavaClassSet_get_target,$(1)) : CLASSPATH := $(2))
 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
 $(eval $(call gb_JavaClassSet_get_target,$(1)) : $(2))
+$(eval $(call gb_JavaClassSet_get_target,$(1)) : CLASSPATH := 
$$(CLASSPATH)$(gb_CLASSPATHSEP)$(2))
 $(eval $(call gb_JavaClassSet_get_target,$(1)) : JARDEPS += $(2))
+endef
+
+# this does not generate dependency on the jar
+define gb_JavaClassSet_add_system_jar
+$(eval $(call gb_JavaClassSet_get_target,$(1)) : CLASSPATH := 
$$(CLASSPATH)$(gb_CLASSPATHSEP)$(2))
+$(eval $(call gb_JavaClassSet_get_target,$(1)) : JARDEPS += $(2))
+endef
+
+define gb_JavaClassSet_add_jars
+$(foreach jar,$(2),$(call gb_JavaClassSet_add_jar,$(1),$(jar)))
+endef
+
+define gb_JavaClassSet_add_system_jars
+$(foreach jar,$(2),$(call gb_JavaClassSet_add_system_jar,$(1),$(jar)))
+endef
+
+# this forwards to functions that must be defined in RepositoryExternal.mk.
+# $(call gb_LinkTarget_use_external,library,external)
+define gb_JavaClassSet_use_external
+$(eval $(if $(value gb_JavaClassSet__use_$(2)),\
+  $(call gb_JavaClassSet__use_$(2),$(1)),\
+  $(error gb_JavaClassSet_use_external: unknown external: $(2))))
+endef
 
+define gb_JavaClassSet_use_externals
+$(foreach external,$(2),$(call gb_JavaClassSet_use_external,$(1),$(external)))
 endef
 
 # vim: set noet sw=4 ts=4:


Reply via email to