diff options
author | David Ostrovsky <david@ostrovsky.org> | 2012-10-04 09:41:00 +0200 |
---|---|---|
committer | Norbert Thiebaud <nthiebaud@gmail.com> | 2012-10-05 19:01:14 +0000 |
commit | 368e23a3908fcf87a1290ed21da4b57ccf8f3894 (patch) | |
tree | adbc266c3521d5cca0be763a36b3cc9554ebd5b4 /jfreereport/ExternalProject_jfreereport_flow_engine.mk | |
parent | 3ec5db65a7b1dfde8246ed9855716916d6cc468e (diff) |
gbuildification of jfreereport
In dmake jfreereport build system an intermediate directory classes was used.
All artefacts that created during build were copied there, including external
apache-commons-logging.jar. Finally java system property was used -Dlib=classes.
In gbuild we don't want to mess with copying artefacts around.
The artefacts are packaging in $(OUTDIR)/bin and java system
property points to -Dlib=$(OUTDIR)/bin. However the dependencies must
be set inside jfreereport module, because of jar interdependency:
liblayout depends on other jars and flow-engine depends on liblayout.
This is achived with new function gb_ExternalProject_use_packages.
Special treatment is necessary when system apache-commons library is used,
in which case it is not reside in $(OUTDIR)/bin, but in
/usr/share/java/commons-logging.jar or in custom location. For that
purpose the both patches: flow-engine.patch and liblayout.patch were extended
and new java system property was introduced -Dcommons-logging.jar and passed
to the build.xml. A dependency from liblayout to apache-commons-logging is set.
jfreereport was moved to tail_build module.
Change-Id: I32e39bb5f4f825f182c3bd3cfc1a13ea1c38321e
Reviewed-on: https://gerrit.libreoffice.org/761
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Diffstat (limited to 'jfreereport/ExternalProject_jfreereport_flow_engine.mk')
-rw-r--r-- | jfreereport/ExternalProject_jfreereport_flow_engine.mk | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/jfreereport/ExternalProject_jfreereport_flow_engine.mk b/jfreereport/ExternalProject_jfreereport_flow_engine.mk new file mode 100644 index 000000000000..3deb87ef9dc9 --- /dev/null +++ b/jfreereport/ExternalProject_jfreereport_flow_engine.mk @@ -0,0 +1,43 @@ +# -*- 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/. +# + +# for RSCREVISION +include $(SOLARENV)/inc/minor.mk + +$(eval $(call gb_ExternalProject_ExternalProject,jfreereport_flow_engine)) + +$(eval $(call gb_ExternalProject_use_unpacked,jfreereport_flow_engine,jfreereport_flow_engine)) + +$(eval $(call gb_ExternalProject_use_packages,jfreereport_flow_engine,\ + jfreereport_liblayout \ +)) + +$(eval $(call gb_ExternalProject_register_targets,jfreereport_flow_engine,\ + build \ +)) + +$(call gb_ExternalProject_get_state_target,jfreereport_flow_engine,build) : + cd "$(call gb_UnpackedTarball_get_dir,jfreereport_flow_engine)" && \ + "$(ANT)" \ + -q \ + -f build.xml \ + -Dbuild.label="build-$(RSCREVISION)" \ + $(if $(filter YES,$(SYSTEM_APACHE_COMMONS))\ + ,-Dcommons-logging.jar=$(COMMONS_LOGGING_JAR) \ + )\ + -Dlib=$(OUTDIR)/bin \ + $(if $(filter yes,$(JAVACISGCJ))\ + ,-Dbuild.compiler=gcj \ + ,-Dant.build.javac.source=$(JAVA_SOURCE_VER) \ + -Dant.build.javac.target=$(JAVA_TARGET_VER) \ + ) \ + $(if $(debug),-Dbuild.debug="on") jar && \ + touch $@ + +# vim: set noet sw=4 ts=4: |