2011-08-09 12:12:48 -05:00
|
|
|
# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
|
2010-04-27 04:39:42 -05:00
|
|
|
#*************************************************************************
|
|
|
|
#
|
|
|
|
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
|
|
|
#
|
2010-06-09 17:33:42 -05:00
|
|
|
# Copyright 2000, 2010 Oracle and/or its affiliates.
|
2010-04-27 04:39:42 -05:00
|
|
|
#
|
|
|
|
# OpenOffice.org - a multi-platform office productivity suite
|
|
|
|
#
|
|
|
|
# This file is part of OpenOffice.org.
|
|
|
|
#
|
|
|
|
# OpenOffice.org is free software: you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU Lesser General Public License version 3
|
|
|
|
# only, as published by the Free Software Foundation.
|
|
|
|
#
|
|
|
|
# OpenOffice.org is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2010-06-09 17:33:42 -05:00
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
2010-04-27 04:39:42 -05:00
|
|
|
# GNU Lesser General Public License version 3 for more details
|
|
|
|
# (a copy is included in the LICENSE file that accompanied this code).
|
|
|
|
#
|
|
|
|
# You should have received a copy of the GNU Lesser General Public License
|
2010-06-09 17:33:42 -05:00
|
|
|
# version 3 along with OpenOffice.org. If not, see
|
2010-04-27 04:39:42 -05:00
|
|
|
# <http://www.openoffice.org/license.html>
|
|
|
|
# for a copy of the LGPLv3 License.
|
|
|
|
#
|
|
|
|
#*************************************************************************
|
|
|
|
|
2010-11-21 13:08:01 -06:00
|
|
|
# SdiTarget is evil, in that it does not support multiple repositories for now (hardcoded to SRCDIR)
|
|
|
|
# Also there is no way to cleanly deliver the generated header to OUTDIR.
|
|
|
|
# (This can be workarounded by using gb_Package, but really should not.)
|
2010-04-27 04:39:42 -05:00
|
|
|
|
|
|
|
# SdiTarget class
|
|
|
|
|
2011-06-16 12:27:23 -05:00
|
|
|
gb_SdiTarget_SVIDLTARGET := $(call gb_Executable_get_target_for_build,svidl)
|
2010-04-27 04:39:42 -05:00
|
|
|
gb_SdiTarget_SVIDLCOMMAND := $(gb_SdiTarget_SVIDLPRECOMMAND) $(gb_SdiTarget_SVIDLTARGET)
|
|
|
|
|
2011-02-22 12:12:18 -06:00
|
|
|
$(call gb_SdiTarget_get_target,%) : $(SRCDIR)/%.sdi | $(gb_SdiTarget_SVIDLTARGET)
|
2011-03-11 07:30:09 -06:00
|
|
|
$(call gb_Output_announce,$*,$(true),SDI,1)
|
|
|
|
$(call gb_Helper_abbreviate_dirs,\
|
|
|
|
mkdir -p $(dir $@))
|
|
|
|
$(call gb_Helper_abbreviate_dirs_native,\
|
|
|
|
cd $(dir $<) && \
|
|
|
|
$(gb_SdiTarget_SVIDLCOMMAND) -quiet \
|
|
|
|
$(INCLUDE) \
|
|
|
|
-fs$@.hxx \
|
|
|
|
-fd$@.ilb \
|
|
|
|
-fl$@.lst \
|
|
|
|
-fz$@.sid \
|
|
|
|
-fx$(EXPORTS) \
|
|
|
|
-fm$@ \
|
2011-03-17 07:59:34 -05:00
|
|
|
$(realpath $<))
|
2010-04-27 04:39:42 -05:00
|
|
|
|
|
|
|
.PHONY : $(call gb_SdiTarget_get_clean_target,%)
|
|
|
|
$(call gb_SdiTarget_get_clean_target,%) :
|
2011-03-11 07:30:09 -06:00
|
|
|
$(call gb_Output_announce,$*,$(false),SDI,1)
|
|
|
|
-$(call gb_Helper_abbreviate_dirs,\
|
|
|
|
rm -f $(foreach ext,.hxx .ilb .lst .sid,\
|
|
|
|
$(call gb_SdiTarget_get_target,$*)$(ext)) \
|
|
|
|
$(call gb_SdiTarget_get_target,$*))
|
2010-04-27 04:39:42 -05:00
|
|
|
|
|
|
|
define gb_SdiTarget_SdiTarget
|
2011-01-17 10:44:15 -06:00
|
|
|
$(call gb_SdiTarget_get_target,$(1)) : INCLUDE := $$(subst -I. ,-I$$(dir $(SRCDIR)/$(1)) ,$$(SOLARINC))
|
2010-04-27 04:39:42 -05:00
|
|
|
$(call gb_SdiTarget_get_target,$(1)) : EXPORTS := $(SRCDIR)/$(2).sdi
|
|
|
|
endef
|
|
|
|
|
|
|
|
define gb_SdiTarget_set_include
|
|
|
|
$(call gb_SdiTarget_get_target,$(1)) : INCLUDE := $(2)
|
|
|
|
|
|
|
|
endef
|
|
|
|
|
2011-03-11 07:30:09 -06:00
|
|
|
# vim: set noet sw=4:
|