[Libreoffice-commits] .: 9 commits - desktop/CustomTarget_soffice.mk desktop/Module_desktop.mk desktop/Package_soffice_sh.mk desktop/scripts extensions/CustomTarget_so_activex_idl.mk extensions/CustomTarget_so_activex_x64.mk extensions/Library_so_activex.mk extensions/Library_so_activex_x64.mk extensions/Module_extensions.mk extensions/Package_so_activex_idl.mk extensions/Package_so_activex_x64.mk extensions/source extensions/WinResTarget_activex.mk filter/CustomTarget_svg.mk filter/Library_svgfilter.mk filter/Module_filter.mk filter/Package_filter_generated.mk filter/source jvmfwk/CustomTarget_jreproperties.mk jvmfwk/Module_jvmfwk.mk jvmfwk/Package_jreproperties.mk jvmfwk/plugins officecfg/CustomTarget_registry.mk officecfg/Module_officecfg.mk officecfg/Package_cppheader.mk officecfg/registry sdext/CustomTarget_pdfimport.mk sdext/CustomTarget_presenter.mk sdext/Extension_pdfimport.mk sdext/Extension_presenter.mk sdext/Library_pdfimport.mk sdext/Module_sdext.mk sdext/Package_pdfimport_key words.mk sdext/Package_presenter_help.mk sdext/source sdext/StaticLibrary_pdfimport_s.mk solenv/gbuild sw/Library_msword.mk writerfilter/CustomTarget_source.mk writerfilter/Library_resourcemodel.mk writerfilter/Module_writerfilter.mk writerfilter/Package_sprmids.mk writerfilter/Package_writerfilter_generated.mk writerfilter/source

Matus Kukan mkukan at kemper.freedesktop.org
Wed Apr 4 02:34:37 PDT 2012


 desktop/CustomTarget_soffice.mk                                    |   42 +
 desktop/Module_desktop.mk                                          |    1 
 desktop/Package_soffice_sh.mk                                      |    8 
 desktop/scripts/Makefile                                           |   39 -
 extensions/CustomTarget_so_activex_idl.mk                          |   52 ++
 extensions/CustomTarget_so_activex_x64.mk                          |   43 +
 extensions/Library_so_activex.mk                                   |    5 
 extensions/Library_so_activex_x64.mk                               |    6 
 extensions/Module_extensions.mk                                    |    4 
 extensions/Package_so_activex_idl.mk                               |   36 -
 extensions/Package_so_activex_x64.mk                               |   41 -
 extensions/WinResTarget_activex.mk                                 |    2 
 extensions/source/activex/Makefile                                 |   41 -
 extensions/source/activex/idl/Makefile                             |   51 --
 filter/CustomTarget_svg.mk                                         |   76 +++
 filter/Library_svgfilter.mk                                        |    7 
 filter/Module_filter.mk                                            |    2 
 filter/Package_filter_generated.mk                                 |   39 -
 filter/source/svg/Makefile                                         |   77 ---
 jvmfwk/CustomTarget_jreproperties.mk                               |   40 +
 jvmfwk/Module_jvmfwk.mk                                            |    1 
 jvmfwk/Package_jreproperties.mk                                    |    8 
 jvmfwk/plugins/sunmajor/pluginlib/Makefile                         |   38 -
 officecfg/CustomTarget_registry.mk                                 |   62 ++
 officecfg/Module_officecfg.mk                                      |    1 
 officecfg/Package_cppheader.mk                                     |   11 
 officecfg/registry/Makefile                                        |   60 --
 sdext/CustomTarget_pdfimport.mk                                    |   39 +
 sdext/CustomTarget_presenter.mk                                    |   43 +
 sdext/Extension_pdfimport.mk                                       |    4 
 sdext/Extension_presenter.mk                                       |    8 
 sdext/Library_pdfimport.mk                                         |    1 
 sdext/Module_sdext.mk                                              |    4 
 sdext/Package_pdfimport_keywords.mk                                |   36 -
 sdext/Package_presenter_help.mk                                    |   36 -
 sdext/StaticLibrary_pdfimport_s.mk                                 |    5 
 sdext/source/pdfimport/wrapper/Makefile                            |   37 -
 sdext/source/presenter/help/en-US/com.sun.PresenterScreen/Makefile |   40 -
 solenv/gbuild/LinkTarget.mk                                        |   14 
 sw/Library_msword.mk                                               |    9 
 writerfilter/CustomTarget_source.mk                                |  230 +++++++++
 writerfilter/Library_resourcemodel.mk                              |    3 
 writerfilter/Module_writerfilter.mk                                |    3 
 writerfilter/Package_sprmids.mk                                    |   33 +
 writerfilter/Package_writerfilter_generated.mk                     |   80 ---
 writerfilter/source/Makefile                                       |  231 ----------
 46 files changed, 690 insertions(+), 959 deletions(-)

New commits:
commit 13191ad7cd25871c08066817b6cc55b0d7ea419e
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Wed Apr 4 11:21:17 2012 +0200

    gbuild: fix cleaning generated object files

diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index 746ddfa..996ef9c 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -273,8 +273,6 @@ gb_LinkTarget_DEFAULTDEFS := $(gb_GLOBALDEFS)
 $(call gb_LinkTarget_get_clean_target,%) :
 	$(call gb_Output_announce,$*,$(false),LNK,4)
 	RESPONSEFILE=$(call var2file,$(shell $(gb_MKTEMP)),200,\
-		$(WORKDIR)/GenCObject/$(notdir $*) \
-		$(WORKDIR)/GenCxxObject/$(nodir $*) \
 		$(foreach object,$(COBJECTS),$(call gb_CObject_get_target,$(object))) \
 		$(foreach object,$(COBJECTS),$(call gb_CObject_get_dep_target,$(object))) \
 		$(foreach object,$(CXXOBJECTS),$(call gb_CxxObject_get_target,$(object))) \
@@ -285,7 +283,9 @@ $(call gb_LinkTarget_get_clean_target,%) :
 		$(foreach object,$(OBJCXXOBJECTS),$(call gb_ObjCxxObject_get_dep_target,$(object))) \
 		$(foreach object,$(ASMOBJECTS),$(call gb_AsmObject_get_target,$(object))) \
 		$(foreach object,$(ASMOBJECTS),$(call gb_AsmObject_get_dep_target,$(object))) \
+		$(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_target,$(object))) \
 		$(foreach object,$(GENCOBJECTS),$(call gb_GenCObject_get_dep_target,$(object))) \
+		$(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_target,$(object))) \
 		$(foreach object,$(GENCXXOBJECTS),$(call gb_GenCxxObject_get_dep_target,$(object))) \
 		$(call gb_LinkTarget_get_target,$*) \
 		$(call gb_LinkTarget_get_dep_target,$*) \
commit be3c5c7c56673337c634c097cca0e1eaf2895891
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Fri Mar 30 19:57:06 2012 +0200

    sdext: use CustomTarget makefiles

diff --git a/sdext/CustomTarget_pdfimport.mk b/sdext/CustomTarget_pdfimport.mk
new file mode 100644
index 0000000..3e57b3d
--- /dev/null
+++ b/sdext/CustomTarget_pdfimport.mk
@@ -0,0 +1,39 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,sdext/pdfimport,new_style))
+
+SEPI := $(call gb_CustomTarget_get_workdir,sdext/pdfimport)
+
+$(call gb_CustomTarget_get_target,sdext/pdfimport) : $(SEPI)/hash.cxx
+
+$(SEPI)/hash.cxx : $(SRCDIR)/sdext/source/pdfimport/wrapper/keyword_list \
+		| $(SEPI)/.dir
+	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),GPF,1)
+	$(GPERF) -C -t -l -L C++ -m 20 -Z PdfKeywordHash -k'4-5,$$' $< > $@
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/sdext/CustomTarget_presenter.mk b/sdext/CustomTarget_presenter.mk
new file mode 100644
index 0000000..fee465c
--- /dev/null
+++ b/sdext/CustomTarget_presenter.mk
@@ -0,0 +1,43 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,sdext/source/presenter/help/en-US/com.sun.PresenterScreen,new_style))
+
+SEPR := $(call gb_CustomTarget_get_workdir,sdext/source/presenter/help/en-US/com.sun.PresenterScreen)
+
+$(call gb_CustomTarget_get_target,sdext/source/presenter/help/en-US/com.sun.PresenterScreen) : \
+	$(SEPR)/presenter.xhp
+
+include $(SRCDIR)/sdext/platform.mk
+
+$(SEPR)/presenter.xhp : \
+		$(SRCDIR)/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/presenter.xhp \
+		| $(SEPR)/.dir
+	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),SED,1)
+	sed "s/PLATFORMID/$(sdext_PLATFORM)/" < $< > $@
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/sdext/Extension_pdfimport.mk b/sdext/Extension_pdfimport.mk
index 2e32699..b2a7786 100644
--- a/sdext/Extension_pdfimport.mk
+++ b/sdext/Extension_pdfimport.mk
@@ -31,10 +31,6 @@ $(eval $(call gb_Extension_Extension,pdfimport,sdext/source/pdfimport))
 
 $(eval $(call gb_Extension_set_platform,pdfimport,$(sdext_PLATFORM)))
 
-$(eval $(call gb_Extension_add_package_dependencies,pdfimport,\
-    sdext_pdfimport_keywords \
-))
-
 $(eval $(call gb_Extension_add_files,pdfimport,,\
     $(call gb_Executable_get_target,xpdfimport) \
     $(call gb_Library_get_target,pdfimport) \
diff --git a/sdext/Extension_presenter.mk b/sdext/Extension_presenter.mk
index 3fa9806..a0932f9 100644
--- a/sdext/Extension_presenter.mk
+++ b/sdext/Extension_presenter.mk
@@ -31,10 +31,6 @@ $(eval $(call gb_Extension_Extension,presenter-screen,sdext/source/presenter))
 
 $(eval $(call gb_Extension_set_platform,presenter-screen,$(sdext_PLATFORM)))
 
-$(eval $(call gb_Extension_add_package_dependencies,presenter-screen,\
-    sdext_presenter_help \
-))
-
 $(eval $(call gb_Extension_add_files,presenter-screen,,\
     $(call gb_Library_get_target,PresenterScreen) \
 ))
@@ -149,8 +145,4 @@ $(eval $(call gb_Extension_add_files,presenter-screen,help/en-US/com.sun.Present
 
 $(eval $(call gb_Extension_localize_help,presenter-screen,help/lang/com.sun.PresenterScreen-$(sdext_PLATFORM)/presenter.xhp,$(WORKDIR)/CustomTarget/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/presenter.xhp))
 
-# this file is created by a custom target, but we depend on it: ensure
-# make knows about it
-$(WORKDIR)/CustomTarget/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/presenter.xhp :| $(call gb_Package_get_target,sdext_presenter_help)
-
 # vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sdext/Library_pdfimport.mk b/sdext/Library_pdfimport.mk
index f8e47ad..43fd193 100644
--- a/sdext/Library_pdfimport.mk
+++ b/sdext/Library_pdfimport.mk
@@ -33,7 +33,6 @@ $(eval $(call gb_Library_add_api,pdfimport,\
 ))
 
 $(eval $(call gb_Library_set_include,pdfimport,\
-    -I$(WORKDIR)/CustomTarget/sdext/source/pdfimport/wrapper \
     -I$(SRCDIR)/sdext/source/pdfimport/inc \
     $$(INCLUDE) \
 ))
diff --git a/sdext/Module_sdext.mk b/sdext/Module_sdext.mk
index 7827633..2d8b6fc 100644
--- a/sdext/Module_sdext.mk
+++ b/sdext/Module_sdext.mk
@@ -38,13 +38,13 @@ endif
 
 ifeq ($(ENABLE_PDFIMPORT),YES)
 $(eval $(call gb_Module_add_targets,sdext,\
+    CustomTarget_pdfimport \
     Executable_pdf2xml \
     Executable_pdfunzip \
     Executable_xpdfimport \
     Extension_pdfimport \
     Library_pdfimport \
     StaticLibrary_pdfimport_s \
-    Package_pdfimport_keywords \
 ))
 
 $(eval $(call gb_Module_add_check_targets,sdext,\
@@ -55,9 +55,9 @@ endif
 ifeq ($(ENABLE_PRESENTER_SCREEN),YES)
 $(eval $(call gb_Module_add_targets,sdext,\
     Configuration_presenter \
+    CustomTarget_presenter \
     Extension_presenter \
     Library_presenter \
-    Package_presenter_help \
     Zip_presenter \
 ))
 endif
diff --git a/sdext/Package_pdfimport_keywords.mk b/sdext/Package_pdfimport_keywords.mk
deleted file mode 100644
index 0edb3fd..0000000
--- a/sdext/Package_pdfimport_keywords.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Package_Package,sdext_pdfimport_keywords,$(WORKDIR)/CustomTarget/sdext/source/pdfimport/wrapper))
-
-$(eval $(call gb_Package_add_customtarget,sdext_pdfimport_keywords,sdext/source/pdfimport/wrapper))
-
-$(eval $(call gb_CustomTarget_add_dependencies,sdext/source/pdfimport/wrapper,\
-    sdext/source/pdfimport/wrapper/keyword_list \
-))
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sdext/Package_presenter_help.mk b/sdext/Package_presenter_help.mk
deleted file mode 100644
index d3efb71..0000000
--- a/sdext/Package_presenter_help.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Package_Package,sdext_presenter_help,$(WORKDIR)/CustomTarget/sdext/source/presenter/help/en-US/com.sun.PresenterScreen))
-
-$(eval $(call gb_Package_add_customtarget,sdext_presenter_help,sdext/source/presenter/help/en-US/com.sun.PresenterScreen))
-
-$(eval $(call gb_CustomTarget_add_dependencies,sdext/source/presenter/help/en-US/com.sun.PresenterScreen,\
-    sdext/source/presenter/help/en-US/com.sun.PresenterScreen/presenter.xhp \
-))
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sdext/StaticLibrary_pdfimport_s.mk b/sdext/StaticLibrary_pdfimport_s.mk
index 5fd3072..7bebdd7 100644
--- a/sdext/StaticLibrary_pdfimport_s.mk
+++ b/sdext/StaticLibrary_pdfimport_s.mk
@@ -38,12 +38,9 @@ $(eval $(call gb_StaticLibrary_use_externals,pdfimport_s,\
     zlib \
 ))
 
-$(eval $(call gb_StaticLibrary_add_package_headers,pdfimport_s,\
-    sdext_pdfimport_keywords \
-))
+$(eval $(call gb_StaticLibrary_add_custom_headers,pdfimport_s,sdext/pdfimport))
 
 $(eval $(call gb_StaticLibrary_set_include,pdfimport_s,\
-    -I$(WORKDIR)/CustomTarget/sdext/source/pdfimport/wrapper \
     -I$(SRCDIR)/sdext/source/pdfimport/inc \
     $$(INCLUDE) \
 ))
diff --git a/sdext/source/pdfimport/wrapper/Makefile b/sdext/source/pdfimport/wrapper/Makefile
deleted file mode 100644
index 868182b..0000000
--- a/sdext/source/pdfimport/wrapper/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-gb_PARTIALBUILD := T
-
-hash.cxx : $(SRCDIR)/sdext/source/pdfimport/wrapper/keyword_list
-	$(GPERF) -C -t -l -L C++ -m 20 -Z PdfKeywordHash -k'4-5,$$' $< > $@
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : hash.cxx
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/Makefile b/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/Makefile
deleted file mode 100644
index ecef202..0000000
--- a/sdext/source/presenter/help/en-US/com.sun.PresenterScreen/Makefile
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-PARTIAL_BUILD := T
-SOURCEDIR := $(dir $(realpath $(lastword $(MAKEFILE_LIST))))
-
-include $(SRCDIR)/sdext/platform.mk
-
-presenter.xhp :
-	sed "s/PLATFORMID/$(sdext_PLATFORM)/" < $(SOURCEDIR)/presenter.xhp > $@
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : presenter.xhp
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
commit b635ee568cba6dc828084cdbd9e9b9995ddf7a68
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sun Apr 1 14:53:13 2012 +0200

    extensions: use CustomTarget makefiles

diff --git a/extensions/CustomTarget_so_activex_idl.mk b/extensions/CustomTarget_so_activex_idl.mk
new file mode 100644
index 0000000..e389f5b
--- /dev/null
+++ b/extensions/CustomTarget_so_activex_idl.mk
@@ -0,0 +1,52 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,extensions/source/activex/idl,new_style))
+
+EXAI := $(call gb_CustomTarget_get_workdir,extensions/source/activex/idl)
+
+$(call gb_CustomTarget_get_target,extensions/source/activex/idl) : \
+	$(EXAI)/so_activex.tlb
+
+# XXX: I presume that the "$(COM)"=="GCC" case in the original
+# extensions/source/activex/msidl/makefile.mk was for the
+# use-mingw-on-windows case and thus is not interesting for us.
+$(EXAI)/so_activex.tlb : \
+		$(SRCDIR)/extensions/source/activex/so_activex.idl | $(EXAI)/.dir
+	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),IDL,1)
+	$(call gb_Helper_abbreviate_dirs_native, \
+	midl.exe \
+		-tlb $@ \
+		-h so_activex.h \
+		-iid so_activex_i.c \
+		-dlldata so_activex_dll.c \
+		-proxy so_activex_p.c \
+		-Oicf \
+		$(INCLUDE) \
+		$<)
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/extensions/CustomTarget_so_activex_x64.mk b/extensions/CustomTarget_so_activex_x64.mk
new file mode 100644
index 0000000..f894bac
--- /dev/null
+++ b/extensions/CustomTarget_so_activex_x64.mk
@@ -0,0 +1,43 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,extensions/source/activex,new_style))
+
+EXSA := $(call gb_CustomTarget_get_workdir,extensions/source/activex)
+
+$(call gb_CustomTarget_get_target,extensions/source/activex) : \
+	$(EXSA)/SOActionsApproval.cxx \
+	$(EXSA)/SOActiveX.cxx \
+	$(EXSA)/SOComWindowPeer.cxx \
+	$(EXSA)/SODispatchInterceptor.cxx \
+	$(EXSA)/StdAfx2.cxx \
+	$(EXSA)/so_activex.cxx \
+
+$(EXSA)/% : $(SRCDIR)/extensions/source/activex/%
+	cp $< $@
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/extensions/Library_so_activex.mk b/extensions/Library_so_activex.mk
index 235bcbe..798fc0f 100644
--- a/extensions/Library_so_activex.mk
+++ b/extensions/Library_so_activex.mk
@@ -30,13 +30,10 @@
 
 $(eval $(call gb_Library_Library,so_activex))
 
-$(eval $(call gb_Library_add_package_headers,so_activex,\
-    extensions_so_activex_idl \
-))
+$(eval $(call gb_Library_add_custom_headers,so_activex,extensions/source/activex/idl))
 
 $(eval $(call gb_Library_set_include,so_activex,\
 	$$(INCLUDE) \
-	-I$(WORKDIR)/CustomTarget/extensions/source/activex/idl \
 	$(foreach i,$(ATL_INCLUDE), -I$(i)) \
 ))
 
diff --git a/extensions/Library_so_activex_x64.mk b/extensions/Library_so_activex_x64.mk
index af70b66..3839f9e 100644
--- a/extensions/Library_so_activex_x64.mk
+++ b/extensions/Library_so_activex_x64.mk
@@ -32,15 +32,11 @@ $(eval $(call gb_Library_Library,so_activex_x64))
 
 $(eval $(call gb_Library_set_x64,so_activex_x64,YES))
 
-$(eval $(call gb_Library_add_package_headers,so_activex_x64,\
-    extensions_so_activex_idl \
-    extensions_so_activex_x64_sources \
-))
+$(eval $(call gb_Library_add_custom_headers,so_activex_x64,extensions/source/activex/idl))
 
 $(eval $(call gb_Library_set_include,so_activex_x64,\
 	$$(INCLUDE) \
 	-I$(SRCDIR)/extensions/source/activex \
-	-I$(WORKDIR)/CustomTarget/extensions/source/activex/idl \
 	$(foreach i,$(ATL_INCLUDE), -I$(i)) \
 ))
 
diff --git a/extensions/Module_extensions.mk b/extensions/Module_extensions.mk
index f6a8a22..f7e7180 100644
--- a/extensions/Module_extensions.mk
+++ b/extensions/Module_extensions.mk
@@ -69,15 +69,15 @@ ifeq ($(OS),WNT)
 ifeq ($(COM),MSC)
 ifneq ($(DISABLE_ACTIVEX),TRUE)
 $(eval $(call gb_Module_add_targets,extensions,\
+	CustomTarget_so_activex_idl \
 	WinResTarget_activex \
 	Library_so_activex \
-	Package_so_activex_idl \
 ))
 
 ifeq ($(BUILD_X64),TRUE)
 $(eval $(call gb_Module_add_targets,extensions,\
+	CustomTarget_so_activex_x64 \
 	Library_so_activex_x64 \
-	Package_so_activex_x64 \
 ))
 endif # BUILD_X64
 endif # DISABLE_ACTIVEX
diff --git a/extensions/Package_so_activex_idl.mk b/extensions/Package_so_activex_idl.mk
deleted file mode 100644
index b49c482..0000000
--- a/extensions/Package_so_activex_idl.mk
+++ /dev/null
@@ -1,36 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Package_Package,extensions_so_activex_idl,$(WORKDIR)/extensions/source/activex/idl))
-
-$(eval $(call gb_Package_add_customtarget,extensions_so_activex_idl,extensions/source/activex/idl))
-
-$(eval $(call gb_CustomTarget_add_dependencies,extensions/source/activex/idl,\
-    extensions/source/activex/so_activex.idl \
-))
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/extensions/Package_so_activex_x64.mk b/extensions/Package_so_activex_x64.mk
deleted file mode 100644
index 952bb46..0000000
--- a/extensions/Package_so_activex_x64.mk
+++ /dev/null
@@ -1,41 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Package_Package,extensions_so_activex_x64_sources,$(WORKDIR)/extensions/source/activex))
-
-$(eval $(call gb_Package_add_customtarget,extensions_so_activex_x64_sources,extensions/source/activex))
-
-$(eval $(call gb_CustomTarget_add_dependencies,extensions/source/activex,\
-    extensions/source/activex/SOActionsApproval.cxx \
-    extensions/source/activex/SOActiveX.cxx \
-    extensions/source/activex/SOComWindowPeer.cxx \
-    extensions/source/activex/SODispatchInterceptor.cxx \
-    extensions/source/activex/StdAfx2.cxx \
-    extensions/source/activex/so_activex.cxx \
-))
-
-# vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/extensions/WinResTarget_activex.mk b/extensions/WinResTarget_activex.mk
index df6d833..bad7a0b 100644
--- a/extensions/WinResTarget_activex.mk
+++ b/extensions/WinResTarget_activex.mk
@@ -46,6 +46,6 @@ $(eval $(call gb_WinResTarget_set_defs,activex_res,\
 
 # I suppose this dep is not really necessary, because it should always
 # be fulfilled anyway. But it cannot hurt to have it...
-$(call gb_WinResTarget_get_target,activex_res) : $(call gb_Package_get_target,extensions_so_activex_idl)
+$(call gb_WinResTarget_get_target,activex_res) : $(WORKDIR)/CustomTarget/extensions/source/activex/idl
 
 # vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/extensions/source/activex/Makefile b/extensions/source/activex/Makefile
deleted file mode 100644
index 65f82ea..0000000
--- a/extensions/source/activex/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-% : $(SRCDIR)/extensions/source/activex/%
-	cp $< $@
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : \
-	SOActionsApproval.cxx \
-	SOActiveX.cxx \
-	SOComWindowPeer.cxx \
-	SODispatchInterceptor.cxx \
-	StdAfx2.cxx \
-	so_activex.cxx \
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/extensions/source/activex/idl/Makefile b/extensions/source/activex/idl/Makefile
deleted file mode 100644
index 62b9150..0000000
--- a/extensions/source/activex/idl/Makefile
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-include $(GBUILDDIR)/gbuild_simple.mk
-
-# XXX: I presume that the "$(COM)"=="GCC" case in the original
-# extensions/source/activex/msidl/makefile.mk was for the
-# use-mingw-on-windows case and thus is not interesting for us.
-ifeq ($(OS_FOR_BUILD),WNT)
-override SRCDIR := $(shell cygpath -m $(SRCDIR))
-endif
-so_activex.tlb :
-	midl.exe \
-		-tlb $@ \
-		-h so_activex.h \
-		-iid so_activex_i.c \
-		-dlldata so_activex_dll.c \
-		-proxy so_activex_p.c \
-		-Oicf \
-		$(INCLUDE) \
-		$(SRCDIR)/extensions/source/activex/so_activex.idl
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : so_activex.tlb
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
commit 8cb0d4f0b7368a86ba98cdb3bfeaa45b43a5f1f1
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sun Apr 1 13:17:29 2012 +0200

    officecfg: use CustomTarget makefile

diff --git a/officecfg/CustomTarget_registry.mk b/officecfg/CustomTarget_registry.mk
new file mode 100644
index 0000000..8f5ea48
--- /dev/null
+++ b/officecfg/CustomTarget_registry.mk
@@ -0,0 +1,62 @@
+##
+## Version: MPL 1.1 / GPLv3+ / LGPLv3+
+##
+## The contents of this file are subject to the Mozilla Public License Version
+## 1.1 (the "License"); you may not use this file except in compliance with
+## the License or as specified alternatively below. You may obtain a copy of
+## the License at http://www.mozilla.org/MPL/
+##
+## Software distributed under the License is distributed on an "AS IS" basis,
+## WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+## for the specific language governing rights and limitations under the
+## License.
+##
+## Major Contributor(s):
+## Copyright (C) 2011 Red Hat, Inc., Stephan Bergmann <sbergman at redhat.com>
+## (initial developer)
+##
+## All Rights Reserved.
+##
+## For minor contributions see the git repository.
+##
+## Alternatively, the contents of this file may be used under the terms of
+## either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+## the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+## in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+## instead of those above.
+##
+
+OCDIR := $(SRCDIR)/officecfg/registry
+include $(OCDIR)/files.mk
+
+$(eval $(call gb_CustomTarget_CustomTarget,officecfg/registry,new_style))
+
+OCRG := $(call gb_CustomTarget_get_workdir,officecfg/registry)
+
+$(call gb_CustomTarget_get_target,officecfg/registry) : \
+	$(foreach i,$(officecfg_FILES),$(OCRG)/$(i).hxx)
+
+define oc_target
+$(OCRG)/$(if $(1),$(1)/$(if $(2),$(2)/))%.hxx: \
+            $(OCDIR)/schema/org/openoffice/$(if $(1),$(1)/$(if $(2),$(2)/))%.xcs \
+            $(OCDIR)/cppheader.xsl | $(gb_XSLTPROCTARGET)
+	$$(call gb_Output_announce,$$(subst $(WORKDIR)/,,$$@),$(true),XSL,1)
+	$$(call gb_Helper_abbreviate_dirs_native, \
+        mkdir -p $$(dir $$@) && \
+        $$(gb_XSLTPROC) --nonet --stringparam ns1 \
+            $(if $(1), \
+                $(1) --stringparam ns2 $(if $(2),$(2) --stringparam ns3)) $$* \
+            -o $$@ $(OCDIR)/cppheader.xsl $$<)
+
+endef
+
+# Sort longer paths before their prefixes, as at least GNU Make 3.81 on Mac OS X
+# appears to let % span sub-directories, so that the above rule would produce
+# unexpected results; sorting this way seems to avoid the problem:
+$(eval $(call oc_target,Office,DataAccess))
+$(eval $(call oc_target,Office,OOoImprovement))
+$(eval $(call oc_target,Office,UI))
+$(eval $(call oc_target,Office))
+$(eval $(call oc_target,TypeDetection))
+$(eval $(call oc_target,ucb))
+$(eval $(call oc_target))
diff --git a/officecfg/Module_officecfg.mk b/officecfg/Module_officecfg.mk
index 50eab3e..9b362cd 100644
--- a/officecfg/Module_officecfg.mk
+++ b/officecfg/Module_officecfg.mk
@@ -20,6 +20,7 @@
 $(eval $(call gb_Module_Module,officecfg))
 
 $(eval $(call gb_Module_add_targets,officecfg,\
+    CustomTarget_registry \
     Package_cppheader \
     Package_misc \
     Package_tools \
diff --git a/officecfg/Package_cppheader.mk b/officecfg/Package_cppheader.mk
index 2a3b01f..fb344be 100644
--- a/officecfg/Package_cppheader.mk
+++ b/officecfg/Package_cppheader.mk
@@ -30,16 +30,5 @@ include $(SRCDIR)/officecfg/registry/files.mk
 
 $(eval $(call gb_Package_Package,officecfg_cppheader,$(WORKDIR)/CustomTarget/officecfg/registry))
 
-$(eval $(call \
-    gb_Package_add_customtarget,officecfg_cppheader,officecfg/registry))
-
-$(eval $(call gb_CustomTarget_add_outdir_dependencies,officecfg/registry, \
-    $(gb_XSLTPROCTARGET) \
-))
-
-$(eval $(call gb_CustomTarget_add_dependencies,officecfg/registry, \
-    officecfg/registry/cppheader.xsl \
-    $(foreach i,$(officecfg_FILES),officecfg/registry/schema/org/openoffice/$(i).xcs)))
-
 $(eval $(foreach i,$(officecfg_FILES),$(call \
     gb_Package_add_file,officecfg_cppheader,inc/officecfg/$(i).hxx,$(i).hxx)))
diff --git a/officecfg/registry/Makefile b/officecfg/registry/Makefile
deleted file mode 100644
index 50d872c..0000000
--- a/officecfg/registry/Makefile
+++ /dev/null
@@ -1,60 +0,0 @@
-##
-## Version: MPL 1.1 / GPLv3+ / LGPLv3+
-##
-## The contents of this file are subject to the Mozilla Public License Version
-## 1.1 (the "License"); you may not use this file except in compliance with
-## the License or as specified alternatively below. You may obtain a copy of
-## the License at http://www.mozilla.org/MPL/
-##
-## Software distributed under the License is distributed on an "AS IS" basis,
-## WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-## for the specific language governing rights and limitations under the
-## License.
-##
-## Major Contributor(s):
-## Copyright (C) 2011 Red Hat, Inc., Stephan Bergmann <sbergman at redhat.com>
-## (initial developer)
-##
-## All Rights Reserved.
-##
-## For minor contributions see the git repository.
-##
-## Alternatively, the contents of this file may be used under the terms of
-## either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-## the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-## in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-## instead of those above.
-##
-
-WFDIR := $(dir $(realpath $(firstword $(MAKEFILE_LIST))))
-gb_PARTIALBUILD := T
-include $(GBUILDDIR)/gbuild_simple.mk
-include $(WFDIR)/files.mk
-
-.DEFAULT_GOAL := all
-.PHONY: all
-all: $(foreach i,$(officecfg_FILES),$(i).hxx)
-
-define my_target
-$(if $(1),$(1)/$(if $(2),$(2)/))%.hxx: \
-            $(WFDIR)/schema/org/openoffice/$(if $(1),$(1)/$(if $(2),$(2)/))%.xcs \
-            $(WFDIR)/cppheader.xsl
-	$$(call gb_Helper_abbreviate_dirs_native,mkdir -p $$(dir $$@))
-	$$(call gb_Helper_abbreviate_dirs_native, \
-            $$(gb_XSLTPROC) --nonet --stringparam ns1 \
-            $(if $(1), \
-                $(1) --stringparam ns2 $(if $(2),$(2) --stringparam ns3)) $$* \
-            -o $$@ $$(WFDIR)/cppheader.xsl $$<)
-
-endef
-
-# Sort longer paths before their prefixes, as at least GNU Make 3.81 on Mac OS X
-# appears to let % span sub-directories, so that the above rule would produce
-# unexpected results; sorting this way seems to avoid the problem:
-$(eval $(call my_target,Office,DataAccess))
-$(eval $(call my_target,Office,OOoImprovement))
-$(eval $(call my_target,Office,UI))
-$(eval $(call my_target,Office))
-$(eval $(call my_target,TypeDetection))
-$(eval $(call my_target,ucb))
-$(eval $(call my_target))
commit 8aab8292fedb840238f654530df67b6e79ade537
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sat Mar 31 15:25:10 2012 +0200

    writerfilter: use CustomTarget makefile

diff --git a/sw/Library_msword.mk b/sw/Library_msword.mk
index 3cbc934..0026218 100644
--- a/sw/Library_msword.mk
+++ b/sw/Library_msword.mk
@@ -30,6 +30,8 @@ $(eval $(call gb_Library_Library,msword))
 
 $(eval $(call gb_Library_set_componentfile,msword,sw/util/msword))
 
+$(eval $(call gb_Library_add_external_headers,msword,writerfilter_sprmids))
+
 $(eval $(call gb_Library_set_include,msword,\
     -I$(SRCDIR)/sw/source/core/inc \
     -I$(SRCDIR)/sw/source/ui/inc \
@@ -119,11 +121,4 @@ $(eval $(call gb_Library_add_exception_objects,msword,\
     sw/source/filter/ww8/ww8toolbar \
 ))
 
-# TODO: This should be really fixed in writerfilter so the header is
-# delivered before compilation starts.
-$(call gb_CxxObject_get_target,sw/source/filter/ww8/wrtw8nds) \
-$(call gb_CxxObject_get_target,sw/source/filter/ww8/wrtww8gr) \
-$(call gb_CxxObject_get_target,sw/source/filter/ww8/ww8atr) \
-	: $(OUTDIR)/inc/writerfilter/doctok/sprmids.hxx
-
 # vim: set noet sw=4 ts=4:
diff --git a/writerfilter/CustomTarget_source.mk b/writerfilter/CustomTarget_source.mk
new file mode 100644
index 0000000..e0dda39
--- /dev/null
+++ b/writerfilter/CustomTarget_source.mk
@@ -0,0 +1,230 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2009 by Sun Microsystems, Inc.
+#
+# 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
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
+# 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
+# version 3 along with OpenOffice.org.	If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+
+$(eval $(call gb_CustomTarget_CustomTarget,writerfilter/source,new_style))
+
+WFSG := $(call gb_CustomTarget_get_workdir,writerfilter/source)
+WFDIR := $(SRCDIR)/writerfilter/source/
+
+include $(WFDIR)generated.mk
+
+# doctok
+
+wf_SRC_doctok_Model=$(WFDIR)doctok/resources.xmi
+wf_SRC_doctok_Resources_xsl=$(WFDIR)doctok/resources.xsl
+wf_SRC_doctok_ResourcesImpl_xsl=$(WFDIR)doctok/resourcesimpl.xsl
+wf_SRC_doctok_ResourceIds_xsl=$(WFDIR)doctok/resourceids.xsl
+wf_SRC_doctok_SprmIds_xsl=$(WFDIR)doctok/sprmids.xsl
+wf_SRC_doctok_ResourceTools_xsl=$(WFDIR)doctok/resourcetools.xsl
+
+wf_GEN_doctok_SprmIds_hxx := $(WFSG)/doctok/sprmids.hxx
+wf_GEN_doctok_ResourceIds_hxx := $(WFSG)/doctok/resourceids.hxx
+wf_GEN_doctok_Resources_hxx := $(WFSG)/doctok/resources.hxx
+wf_GEN_doctok_Resources_cxx := $(WFSG)/resources.cxx
+
+$(wf_GEN_doctok_SprmIds_hxx) : $(wf_SRC_doctok_SprmIds_xsl) $(wf_SRC_doctok_Model) | $(WFSG)/doctok/.dir
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_SprmIds_xsl) $(wf_SRC_doctok_Model)) > $@
+
+$(wf_GEN_doctok_ResourceIds_hxx) : $(wf_SRC_doctok_ResourceIds_xsl) $(wf_SRC_doctok_Model) | $(WFSG)/doctok/.dir
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_ResourceIds_xsl) $(wf_SRC_doctok_Model)) > $@
+
+$(wf_GEN_doctok_Resources_hxx) : $(wf_SRC_doctok_Resources_xsl) $(wf_SRC_doctok_Model) | $(WFSG)/doctok/.dir
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_Resources_xsl) $(wf_SRC_doctok_Model)) > $@
+
+$(wf_GEN_doctok_Resources_cxx) : $(wf_SRC_doctok_ResourcesImpl_xsl) $(wf_SRC_doctok_Model) $(wf_SRC_doctok_ResourceTools_xsl) | $(WFSG)/doctok/.dir
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_ResourcesImpl_xsl) $(wf_SRC_doctok_Model)) > $@
+
+# ooxml
+
+wf_SRC_ooxml_Model=$(WFDIR)ooxml/model.xml
+wf_SRC_ooxml_Preprocess_xsl=$(WFDIR)ooxml/modelpreprocess.xsl
+wf_SRC_ooxml_FactoryTools_xsl=$(WFDIR)ooxml/factorytools.xsl
+wf_SRC_ooxml_FastTokens_xsl=$(WFDIR)ooxml/fasttokens.xsl
+wf_SRC_ooxml_NamespaceIds_xsl=$(WFDIR)ooxml/namespaceids.xsl
+wf_SRC_ooxml_FactoryValues_xsl=$(WFDIR)ooxml/factory_values.xsl
+wf_SRC_ooxml_FactoryValuesImpl_xsl=$(WFDIR)ooxml/factoryimpl_values.xsl
+wf_SRC_ooxml_ResourceIds_xsl=$(WFDIR)ooxml/resourceids.xsl
+wf_SRC_ooxml_GperfFastTokenHandler_xsl=$(WFDIR)ooxml/gperffasttokenhandler.xsl
+wf_SRC_ooxml_Analyze_model_xsl=$(WFDIR)ooxml/analyzemodel.xsl
+wf_GEN_ooxml_ResourceIds_hxx=$(WFSG)/ooxml/resourceids.hxx
+
+wf_GEN_ooxml_token_xml=$(WFSG)/token.xml
+wf_GEN_ooxml_token_tmp=$(WFSG)/token.tmp
+
+wf_GEN_ooxml_Factory_hxx=$(WFSG)/OOXMLFactory_generated.hxx
+wf_GEN_ooxml_Factory_cxx=$(WFSG)/OOXMLFactory_generated.cxx
+wf_GEN_ooxml_FastTokens_hxx=$(WFSG)/ooxml/OOXMLFastTokens.hxx
+wf_GEN_ooxml_NamespaceIds_hxx=$(WFSG)/ooxml/OOXMLnamespaceids.hxx
+wf_GEN_ooxml_FactoryValues_hxx=$(WFSG)/OOXMLFactory_values.hxx
+wf_GEN_ooxml_FactoryValues_cxx=$(WFSG)/OOXMLFactory_values.cxx
+wf_GEN_ooxml_GperfFastToken_hxx=$(WFSG)/gperffasttoken.hxx
+wf_GEN_ooxml_Model_processed=$(WFSG)/model_preprocessed.xml
+wf_GEN_ooxml_Model_analyzed=$(WFSG)/ooxml/model_analyzed.xml
+
+$(wf_GEN_ooxml_token_tmp) : $(OUTDIR)/inc/oox/tokens.txt
+	$(call gb_Output_announce,$@,build,CAT,1)
+	cat $(OUTDIR)/inc/oox/tokens.txt \
+	| sed "s#\(.*\)#<fasttoken>\1</fasttoken>#" > $@
+
+$(wf_GEN_ooxml_token_xml) : $(WFDIR)ooxml/tokenxmlheader $(wf_GEN_ooxml_token_tmp) $(WFDIR)ooxml/tokenxmlfooter
+	$(call gb_Output_announce,$@,build,CAT,1)
+	cat $(WFDIR)ooxml/tokenxmlheader $(wf_GEN_ooxml_token_tmp) $(WFDIR)ooxml/tokenxmlfooter > $@
+
+$(wf_GEN_ooxml_FastTokens_hxx) : $(wf_SRC_ooxml_FastTokens_xsl) $(wf_GEN_ooxml_token_xml)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FastTokens_xsl) $(wf_GEN_ooxml_token_xml)) > $@
+
+$(wf_GEN_ooxml_Factory_hxx) : $(WFDIR)ooxml/factoryinc.xsl $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $< $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_Factory_cxx) : $(WFDIR)ooxml/factoryimpl.xsl $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $< $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(WFSG)/OOXMLFactory%.cxx : $(WFDIR)ooxml/factoryimpl_ns.xsl $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) --stringparam file $@ $< $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(WFSG)/OOXMLFactory%.hxx : $(WFDIR)ooxml/factory_ns.xsl $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) --stringparam file $@ $< $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_FactoryValues_hxx) : $(wf_SRC_ooxml_FactoryValues_xsl) $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FactoryValues_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_FactoryValues_cxx) : $(wf_SRC_ooxml_FactoryValuesImpl_xsl) $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FactoryValuesImpl_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_ResourceIds_hxx) : $(wf_SRC_ooxml_ResourceIds_xsl) $(wf_GEN_ooxml_Model_processed) | $(WFSG)/ooxml/.dir
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_ResourceIds_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_NamespaceIds_hxx) : $(wf_SRC_ooxml_NamespaceIds_xsl) $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_NamespaceIds_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_ooxml_GperfFastToken_hxx) : $(wf_SRC_ooxml_GperfFastTokenHandler_xsl) $(wf_GEN_ooxml_token_xml)
+	$(call gb_Output_announce,$@,build,GPF,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_GperfFastTokenHandler_xsl) $(wf_GEN_ooxml_token_xml)) \
+	| tr -d '\r' | $(GPERF) -I -t -E -S1 -c -G -LC++ > $@
+
+$(wf_GEN_ooxml_Model_analyzed): $(wf_SRC_ooxml_Analyze_model_xsl) $(wf_SRC_ooxml_Model)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $^) > $@
+
+# rtftok
+
+wf_SRC_rtftok_scanner_lex=$(WFDIR)rtftok/RTFScanner.lex
+wf_SRC_rtftok_scanner_skl=$(WFDIR)rtftok/RTFScanner.skl
+
+wf_GEN_rtftok_scanner_cxx=$(WFSG)/RTFScanner.cxx
+
+# does not build, currently unused
+#$(wf_GEN_rtftok_scanner_cxx) : $(wf_SRC_rtftok_scanner_lex) $(wf_SRC_rtftok_scanner_skl)
+#	flex -+ -S$(wf_SRC_rtftok_scanner_skl) -o$@ $(wf_SRC_rtftok_scanner_lex)
+
+# resourcemodel
+
+wf_GEN_model_QNameToStr_cxx=$(WFSG)/qnametostr.cxx
+wf_GEN_ooxml_QNameToStr_tmp=$(WFSG)/OOXMLqnameToStr.tmp
+wf_GEN_model_SprmCodeToStr_cxx=$(WFSG)/sprmcodetostr.cxx
+wf_GEN_model_SprmCodeToStr_tmp=$(WFSG)/sprmcodetostr.tmp
+wf_GEN_doctok_QnameToStr_tmp=$(WFSG)/DOCTOKqnameToStr.tmp
+wf_SRC_doctok_SprmCodeToStr_xsl=$(WFDIR)doctok/sprmcodetostr.xsl
+wf_SRC_doctok_QNameToStr_xsl=$(WFDIR)doctok/qnametostr.xsl
+wf_SRC_ooxml_QNameToStr_xsl=$(WFDIR)ooxml/qnametostr.xsl
+wf_SRC_model_NamespacePreprocess=$(WFDIR)resourcemodel/namespace_preprocess.pl
+wf_GEN_ooxml_Namespacesmap_xsl=$(WFSG)/namespacesmap.xsl
+wf_DEP_ooxml_namespaces_txt=$(OUTDIR)/inc/oox/namespaces.txt
+wf_GEN_ooxml_preprocess_xsl=$(WFSG)/modelpreprocess.xsl
+
+$(wf_GEN_ooxml_QNameToStr_tmp): $(wf_SRC_ooxml_QNameToStr_xsl) $(wf_GEN_ooxml_Model_processed)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_QNameToStr_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
+
+$(wf_GEN_doctok_QnameToStr_tmp): $(wf_SRC_doctok_QNameToStr_xsl) $(wf_SRC_doctok_Model)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_QNameToStr_xsl) $(wf_SRC_doctok_Model)) > $@
+
+$(wf_GEN_model_QNameToStr_cxx): $(wf_GEN_ooxml_QNameToStr_tmp) $(wf_GEN_doctok_QnameToStr_tmp) $(WFDIR)resourcemodel/qnametostrheader $(WFDIR)resourcemodel/qnametostrfooter $(wf_SRC_ooxml_FactoryTools_xsl) $(wf_SRC_doctok_ResourceTools_xsl)
+	$(call gb_Output_announce,$@,build,CAT,1)
+	cat $(WFDIR)resourcemodel/qnametostrheader $(wf_GEN_ooxml_QNameToStr_tmp) $(wf_GEN_doctok_QnameToStr_tmp) $(WFDIR)resourcemodel/qnametostrfooter > $@
+
+$(wf_GEN_model_SprmCodeToStr_tmp) : $(wf_SRC_doctok_SprmCodeToStr_xsl) $(wf_SRC_doctok_Model)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_SprmCodeToStr_xsl) $(wf_SRC_doctok_Model)) > $@
+
+$(wf_GEN_model_SprmCodeToStr_cxx): $(WFDIR)resourcemodel/sprmcodetostrheader $(wf_GEN_model_SprmCodeToStr_tmp) $(WFDIR)resourcemodel/sprmcodetostrfooter
+	$(call gb_Output_announce,$@,build,CAT,1)
+	cat $^ > $@
+
+$(wf_GEN_ooxml_Namespacesmap_xsl) : $(wf_SRC_ooxml_Model) $(wf_DEP_ooxml_namespaces_txt) $(wf_SRC_model_NamespacePreprocess)
+	$(call gb_Output_announce,$@,build,PRL,1)
+	$(PERL) $(wf_SRC_model_NamespacePreprocess) $(wf_DEP_ooxml_namespaces_txt) > $@
+
+$(wf_GEN_ooxml_preprocess_xsl) : $(wf_SRC_ooxml_Preprocess_xsl)
+	$(call gb_Output_announce,$@,build,CPY,1)
+	cp -f $(wf_SRC_ooxml_Preprocess_xsl) $@
+
+$(wf_GEN_ooxml_Model_processed) : $(wf_GEN_ooxml_Namespacesmap_xsl) $(wf_GEN_ooxml_preprocess_xsl) $(wf_SRC_ooxml_Model)
+	$(call gb_Output_announce,$@,build,XSL,1)
+	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_GEN_ooxml_Namespacesmap_xsl) $(wf_SRC_ooxml_Model)) > $@
+
+# all
+
+wf_all := \
+	$(wf_GEN_doctok_SprmIds_hxx) \
+	$(wf_GEN_doctok_ResourceIds_hxx) \
+	$(wf_GEN_doctok_Resources_hxx) \
+	$(wf_GEN_doctok_Resources_cxx) \
+	$(wf_GEN_ooxml_ResourceIds_hxx) \
+	$(wf_GEN_ooxml_Factory_hxx) \
+	$(wf_GEN_ooxml_Factory_cxx) \
+	$(wf_GEN_ooxml_FactoryValues_hxx) \
+	$(wf_GEN_ooxml_FactoryValues_cxx) \
+	$(wf_GEN_ooxml_FastTokens_hxx) \
+	$(wf_GEN_ooxml_GperfFastToken_hxx) \
+	$(wf_GEN_ooxml_NamespaceIds_hxx) \
+	$(wf_GEN_model_QNameToStr_cxx) \
+	$(wf_GEN_model_SprmCodeToStr_cxx) \
+	$(patsubst %,$(WFSG)/OOXMLFactory_%.hxx,$(WRITERFILTER_OOXMLNAMESPACES)) \
+	$(patsubst %,$(WFSG)/OOXMLFactory_%.cxx,$(WRITERFILTER_OOXMLNAMESPACES)) \
+
+$(call gb_CustomTarget_get_target,writerfilter/source) : $(wf_all)
+
+$(wf_all) :| $(gb_XSLTPROCTARGET) $(WFSG)/.dir
+
+# vim: set noet sw=4 ts=4:
diff --git a/writerfilter/Library_resourcemodel.mk b/writerfilter/Library_resourcemodel.mk
index 4cd6261..4583db4 100644
--- a/writerfilter/Library_resourcemodel.mk
+++ b/writerfilter/Library_resourcemodel.mk
@@ -27,12 +27,11 @@
 
 $(eval $(call gb_Library_Library,resourcemodel))
 
-$(eval $(call gb_Library_add_package_headers,resourcemodel,writerfilter_generated))
+$(eval $(call gb_Library_add_custom_headers,resourcemodel,writerfilter/source))
 
 $(eval $(call gb_Library_set_include,resourcemodel,\
     $$(INCLUDE) \
     -I$(SRCDIR)/writerfilter/inc \
-    -I$(WORKDIR)/CustomTarget/writerfilter/source \
 ))
 
 include $(SRCDIR)/writerfilter/debug_setup.mk
diff --git a/writerfilter/Module_writerfilter.mk b/writerfilter/Module_writerfilter.mk
index a35daa9..a4711bf 100644
--- a/writerfilter/Module_writerfilter.mk
+++ b/writerfilter/Module_writerfilter.mk
@@ -28,13 +28,14 @@
 $(eval $(call gb_Module_Module,writerfilter))
 
 $(eval $(call gb_Module_add_targets,writerfilter,\
+    CustomTarget_source \
     Library_doctok \
     Library_ooxml \
     Library_resourcemodel \
     Library_rtftok \
     Library_writerfilter \
     Library_writerfilter_uno \
-    Package_writerfilter_generated \
+    Package_sprmids \
 ))
 
 $(eval $(call gb_Module_add_check_targets,writerfilter,\
diff --git a/writerfilter/Package_sprmids.mk b/writerfilter/Package_sprmids.mk
new file mode 100644
index 0000000..2eaa530
--- /dev/null
+++ b/writerfilter/Package_sprmids.mk
@@ -0,0 +1,33 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#*************************************************************************
+#
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# Copyright 2009 by Sun Microsystems, Inc.
+#
+# 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
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
+# 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
+# version 3 along with OpenOffice.org.	If not, see
+# <http://www.openoffice.org/license.html>
+# for a copy of the LGPLv3 License.
+#
+#*************************************************************************
+
+$(eval $(call gb_Package_Package,writerfilter_sprmids,$(call gb_CustomTarget_get_workdir,writerfilter/source)))
+
+$(eval $(call gb_Package_add_file,writerfilter_sprmids,inc/writerfilter/doctok/sprmids.hxx,doctok/sprmids.hxx))
+
+# vim: set noet sw=4 ts=4:
diff --git a/writerfilter/Package_writerfilter_generated.mk b/writerfilter/Package_writerfilter_generated.mk
deleted file mode 100644
index 3e036f1..0000000
--- a/writerfilter/Package_writerfilter_generated.mk
+++ /dev/null
@@ -1,80 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2009 by Sun Microsystems, Inc.
-#
-# 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
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
-# 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
-# version 3 along with OpenOffice.org.	If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-$(eval $(call \
-	gb_Package_Package,writerfilter_generated,$(WORKDIR)/CustomTarget/writerfilter/source))
-
-$(eval $(call \
-	gb_Package_add_customtarget,writerfilter_generated,writerfilter/source))
-
-$(eval $(call \
-	gb_CustomTarget_add_outdir_dependencies,writerfilter/source,\
-		$(gb_XSLTPROCTARGET) \
-		$(OUTDIR)/inc/oox/tokens.txt \
-		$(OUTDIR)/inc/oox/namespaces.txt \
-))
-
-$(eval $(call \
-	gb_CustomTarget_add_dependencies,writerfilter/source,\
-		writerfilter/source/doctok/resources.xmi \
-		writerfilter/source/doctok/resources.xsl \
-		writerfilter/source/doctok/resourcesimpl.xsl \
-		writerfilter/source/doctok/resourceids.xsl \
-		writerfilter/source/doctok/sprmids.xsl \
-		writerfilter/source/doctok/resourcetools.xsl \
-		writerfilter/source/ooxml/model.xml \
-		writerfilter/source/ooxml/modelpreprocess.xsl \
-		writerfilter/source/ooxml/factorytools.xsl \
-		writerfilter/source/ooxml/fasttokens.xsl \
-		writerfilter/source/ooxml/namespaceids.xsl \
-		writerfilter/source/ooxml/factory_values.xsl \
-		writerfilter/source/ooxml/factoryimpl_values.xsl \
-		writerfilter/source/ooxml/resourceids.xsl \
-		writerfilter/source/ooxml/gperffasttokenhandler.xsl \
-		writerfilter/source/ooxml/gperffasttokenhandler.xsl \
-		writerfilter/source/ooxml/tokenxmlheader \
-		writerfilter/source/ooxml/tokenxmlfooter \
-		writerfilter/source/ooxml/factoryinc.xsl \
-		writerfilter/source/ooxml/factoryimpl.xsl \
-		writerfilter/source/ooxml/factoryimpl_ns.xsl \
-		writerfilter/source/ooxml/factory_ns.xsl \
-		writerfilter/source/doctok/sprmcodetostr.xsl \
-		writerfilter/source/doctok/qnametostr.xsl \
-		writerfilter/source/ooxml/qnametostr.xsl \
-		writerfilter/source/resourcemodel/namespace_preprocess.pl \
-		writerfilter/source/resourcemodel/qnametostrheader \
-		writerfilter/source/resourcemodel/qnametostrfooter \
-		writerfilter/source/resourcemodel/sprmcodetostrheader \
-		writerfilter/source/resourcemodel/sprmcodetostrfooter \
-))
-
-$(eval $(call gb_Package_add_file,writerfilter_generated,inc/writerfilter/doctok/sprmids.hxx,doctok/sprmids.hxx))
-$(eval $(call gb_Package_add_file,writerfilter_generated,inc/writerfilter/doctok/resourceids.hxx,doctok/resourceids.hxx))
-$(eval $(call gb_Package_add_file,writerfilter_generated,inc/writerfilter/ooxml/resourceids.hxx,ooxml/resourceids.hxx))
-
-# vim: set noet sw=4 ts=4:
diff --git a/writerfilter/source/Makefile b/writerfilter/source/Makefile
deleted file mode 100644
index 2b10ae9..0000000
--- a/writerfilter/source/Makefile
+++ /dev/null
@@ -1,231 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2009 by Sun Microsystems, Inc.
-#
-# 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
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	See the
-# 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
-# version 3 along with OpenOffice.org.	If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-WFDIR := $(dir $(realpath $(firstword $(MAKEFILE_LIST))))
-
-
-gb_PARTIALBUILD:=T
-include $(WFDIR)generated.mk
-include $(GBUILDDIR)/gbuild_simple.mk
-
-# doctok
-
-doctok :
-	mkdir doctok
-
-wf_SRC_doctok_Model=$(WFDIR)doctok/resources.xmi
-wf_SRC_doctok_Resources_xsl=$(WFDIR)doctok/resources.xsl
-wf_SRC_doctok_ResourcesImpl_xsl=$(WFDIR)doctok/resourcesimpl.xsl
-wf_SRC_doctok_ResourceIds_xsl=$(WFDIR)doctok/resourceids.xsl
-wf_SRC_doctok_SprmIds_xsl=$(WFDIR)doctok/sprmids.xsl
-wf_SRC_doctok_ResourceTools_xsl=$(WFDIR)doctok/resourcetools.xsl
-
-wf_GEN_doctok_SprmIds_hxx=doctok/sprmids.hxx
-wf_GEN_doctok_ResourceIds_hxx=doctok/resourceids.hxx
-wf_GEN_doctok_Resources_hxx=doctok/resources.hxx
-wf_GEN_doctok_Resources_cxx=resources.cxx
-
-$(wf_GEN_doctok_SprmIds_hxx) : doctok $(wf_SRC_doctok_SprmIds_xsl) $(wf_SRC_doctok_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_SprmIds_xsl) $(wf_SRC_doctok_Model)) > $@
-
-$(wf_GEN_doctok_ResourceIds_hxx) : doctok $(wf_SRC_doctok_ResourceIds_xsl) $(wf_SRC_doctok_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_ResourceIds_xsl) $(wf_SRC_doctok_Model)) > $@
-
-$(wf_GEN_doctok_Resources_hxx) : doctok $(wf_SRC_doctok_Resources_xsl) $(wf_SRC_doctok_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_Resources_xsl) $(wf_SRC_doctok_Model)) > $@
-
-$(wf_GEN_doctok_Resources_cxx) : doctok $(wf_SRC_doctok_ResourcesImpl_xsl) $(wf_SRC_doctok_Model) $(wf_SRC_doctok_ResourceTools_xsl)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_ResourcesImpl_xsl) $(wf_SRC_doctok_Model)) > $@
-
-# ooxml
-
-ooxml :
-	mkdir ooxml
-
-wf_SRC_ooxml_Model=$(WFDIR)ooxml/model.xml
-wf_SRC_ooxml_Preprocess_xsl=$(WFDIR)ooxml/modelpreprocess.xsl
-wf_SRC_ooxml_FactoryTools_xsl=$(WFDIR)ooxml/factorytools.xsl
-wf_SRC_ooxml_FastTokens_xsl=$(WFDIR)ooxml/fasttokens.xsl
-wf_SRC_ooxml_NamespaceIds_xsl=$(WFDIR)ooxml/namespaceids.xsl
-wf_SRC_ooxml_FactoryValues_xsl=$(WFDIR)ooxml/factory_values.xsl
-wf_SRC_ooxml_FactoryValuesImpl_xsl=$(WFDIR)ooxml/factoryimpl_values.xsl
-wf_SRC_ooxml_ResourceIds_xsl=$(WFDIR)ooxml/resourceids.xsl
-wf_SRC_ooxml_GperfFastTokenHandler_xsl=$(WFDIR)ooxml/gperffasttokenhandler.xsl
-wf_SRC_ooxml_Analyze_model_xsl=$(WFDIR)ooxml/analyzemodel.xsl
-wf_GEN_ooxml_ResourceIds_hxx=ooxml/resourceids.hxx
-
-wf_GEN_ooxml_token_xml=token.xml
-wf_GEN_ooxml_token_tmp=token.tmp
-
-wf_GEN_ooxml_Factory_hxx=OOXMLFactory_generated.hxx
-wf_GEN_ooxml_Factory_cxx=OOXMLFactory_generated.cxx
-wf_GEN_ooxml_FastTokens_hxx=ooxml/OOXMLFastTokens.hxx
-wf_GEN_ooxml_NamespaceIds_hxx=ooxml/OOXMLnamespaceids.hxx
-wf_GEN_ooxml_FactoryValues_hxx=OOXMLFactory_values.hxx
-wf_GEN_ooxml_FactoryValues_cxx=OOXMLFactory_values.cxx
-wf_GEN_ooxml_GperfFastToken_hxx=gperffasttoken.hxx
-wf_GEN_ooxml_Model_processed=model_preprocessed.xml
-wf_GEN_ooxml_Model_analyzed=ooxml/model_analyzed.xml
-
-$(wf_GEN_ooxml_token_tmp) : $(OUTDIR)/inc/oox/tokens.txt
-	$(call gb_Output_announce,$@,build,CAT,1)
-	cat $(OUTDIR)/inc/oox/tokens.txt \
-	| sed "s#\(.*\)#<fasttoken>\1</fasttoken>#" > $@
-
-$(wf_GEN_ooxml_token_xml) : $(WFDIR)ooxml/tokenxmlheader $(wf_GEN_ooxml_token_tmp) $(WFDIR)ooxml/tokenxmlfooter
-	$(call gb_Output_announce,$@,build,CAT,1)
-	cat $(WFDIR)ooxml/tokenxmlheader $(wf_GEN_ooxml_token_tmp) $(WFDIR)ooxml/tokenxmlfooter > $@
-
-$(wf_GEN_ooxml_FastTokens_hxx) : $(wf_SRC_ooxml_FastTokens_xsl) $(wf_GEN_ooxml_token_xml)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FastTokens_xsl) $(wf_GEN_ooxml_token_xml)) > $@
-
-$(wf_GEN_ooxml_Factory_hxx) : $(WFDIR)ooxml/factoryinc.xsl $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $< $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_Factory_cxx) : $(WFDIR)ooxml/factoryimpl.xsl $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $< $(wf_GEN_ooxml_Model_processed)) > $@
-
-OOXMLFactory%.cxx : $(WFDIR)ooxml/factoryimpl_ns.xsl $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) --stringparam file $@ $< $(wf_GEN_ooxml_Model_processed)) > $@
-
-OOXMLFactory%.hxx : $(WFDIR)ooxml/factory_ns.xsl $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) --stringparam file $@ $< $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_FactoryValues_hxx) : $(wf_SRC_ooxml_FactoryValues_xsl) $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FactoryValues_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_FactoryValues_cxx) : $(wf_SRC_ooxml_FactoryValuesImpl_xsl) $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_FactoryValuesImpl_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_ResourceIds_hxx) : ooxml $(wf_SRC_ooxml_ResourceIds_xsl) $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_ResourceIds_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_NamespaceIds_hxx) : $(wf_SRC_ooxml_NamespaceIds_xsl) $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_NamespaceIds_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_ooxml_GperfFastToken_hxx) : $(wf_SRC_ooxml_GperfFastTokenHandler_xsl) $(wf_GEN_ooxml_token_xml)
-	$(call gb_Output_announce,$@,build,GPF,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_GperfFastTokenHandler_xsl) $(wf_GEN_ooxml_token_xml)) \
-	| tr -d '\r' | $(GPERF) -I -t -E -S1 -c -G -LC++ > $@
-
-$(wf_GEN_ooxml_Model_analyzed): $(wf_SRC_ooxml_Analyze_model_xsl) $(wf_SRC_ooxml_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $^) > $@
-
-# rtftok
-
-wf_SRC_rtftok_scanner_lex=$(WFDIR)rtftok/RTFScanner.lex
-wf_SRC_rtftok_scanner_skl=$(WFDIR)rtftok/RTFScanner.skl
-
-wf_GEN_rtftok_scanner_cxx=RTFScanner.cxx
-
-# does not build, currently unused
-#$(wf_GEN_rtftok_scanner_cxx) : $(wf_SRC_rtftok_scanner_lex) $(wf_SRC_rtftok_scanner_skl)
-#	flex -+ -S$(wf_SRC_rtftok_scanner_skl) -o$@ $(wf_SRC_rtftok_scanner_lex)
-
-# resourcemodel
-
-wf_GEN_model_QNameToStr_cxx=qnametostr.cxx
-wf_GEN_ooxml_QNameToStr_tmp=OOXMLqnameToStr.tmp
-wf_GEN_model_SprmCodeToStr_cxx=sprmcodetostr.cxx
-wf_GEN_model_SprmCodeToStr_tmp=sprmcodetostr.tmp
-wf_GEN_doctok_QnameToStr_tmp=DOCTOKqnameToStr.tmp
-wf_SRC_doctok_SprmCodeToStr_xsl=$(WFDIR)doctok/sprmcodetostr.xsl
-wf_SRC_doctok_QNameToStr_xsl=$(WFDIR)doctok/qnametostr.xsl
-wf_SRC_ooxml_QNameToStr_xsl=$(WFDIR)ooxml/qnametostr.xsl
-wf_SRC_model_NamespacePreprocess=$(WFDIR)resourcemodel/namespace_preprocess.pl
-wf_GEN_ooxml_Namespacesmap_xsl=namespacesmap.xsl
-wf_DEP_ooxml_namespaces_txt=$(OUTDIR)/inc$(UPDMINOREXT)/oox/namespaces.txt
-wf_GEN_ooxml_preprocess_xsl=modelpreprocess.xsl
-
-$(wf_GEN_ooxml_QNameToStr_tmp): $(wf_SRC_ooxml_QNameToStr_xsl) $(wf_GEN_ooxml_Model_processed)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_ooxml_QNameToStr_xsl) $(wf_GEN_ooxml_Model_processed)) > $@
-
-$(wf_GEN_doctok_QnameToStr_tmp): $(wf_SRC_doctok_QNameToStr_xsl) $(wf_SRC_doctok_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_QNameToStr_xsl) $(wf_SRC_doctok_Model)) > $@
-
-$(wf_GEN_model_QNameToStr_cxx): $(wf_GEN_ooxml_QNameToStr_tmp) $(wf_GEN_doctok_QnameToStr_tmp) $(WFDIR)resourcemodel/qnametostrheader $(WFDIR)resourcemodel/qnametostrfooter $(wf_SRC_ooxml_FactoryTools_xsl) $(wf_SRC_doctok_ResourceTools_xsl)
-	$(call gb_Output_announce,$@,build,CAT,1)
-	cat $(WFDIR)resourcemodel/qnametostrheader $(wf_GEN_ooxml_QNameToStr_tmp) $(wf_GEN_doctok_QnameToStr_tmp) $(WFDIR)resourcemodel/qnametostrfooter > $@
-
-$(wf_GEN_model_SprmCodeToStr_tmp) : $(wf_SRC_doctok_SprmCodeToStr_xsl) $(wf_SRC_doctok_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_SRC_doctok_SprmCodeToStr_xsl) $(wf_SRC_doctok_Model)) > $@
-
-$(wf_GEN_model_SprmCodeToStr_cxx): $(WFDIR)resourcemodel/sprmcodetostrheader $(wf_GEN_model_SprmCodeToStr_tmp) $(WFDIR)resourcemodel/sprmcodetostrfooter
-	$(call gb_Output_announce,$@,build,CAT,1)
-	cat $^ > $@
-
-$(wf_GEN_ooxml_Namespacesmap_xsl) : $(wf_SRC_ooxml_Model) $(wf_DEP_ooxml_namespaces_txt) $(wf_SRC_model_NamespacePreprocess)
-	$(call gb_Output_announce,$@,build,PRL,1)
-	$(PERL) $(wf_SRC_model_NamespacePreprocess) $(wf_DEP_ooxml_namespaces_txt) > $@
-
-$(wf_GEN_ooxml_preprocess_xsl) : $(wf_SRC_ooxml_Preprocess_xsl)
-	$(call gb_Output_announce,$@,build,CPY,1)
-	cp -f $(wf_SRC_ooxml_Preprocess_xsl) $@
-
-$(wf_GEN_ooxml_Model_processed) : $(wf_GEN_ooxml_Namespacesmap_xsl) $(wf_GEN_ooxml_preprocess_xsl) $(wf_SRC_ooxml_Model)
-	$(call gb_Output_announce,$@,build,XSL,1)
-	$(call gb_Helper_abbreviate_dirs_native, $(gb_XSLTPROC) $(wf_GEN_ooxml_Namespacesmap_xsl) $(wf_SRC_ooxml_Model)) > $@
-
-# all
-
-.DEFAULT_GOAL:=all
-.PHONY: all
-all : \
-	$(wf_GEN_doctok_SprmIds_hxx) \
-	$(wf_GEN_doctok_ResourceIds_hxx) \
-	$(wf_GEN_doctok_Resources_hxx) \
-	$(wf_GEN_doctok_Resources_cxx) \
-	$(wf_GEN_ooxml_ResourceIds_hxx) \
-	$(wf_GEN_ooxml_Factory_hxx) \
-	$(wf_GEN_ooxml_Factory_cxx) \
-	$(wf_GEN_ooxml_FactoryValues_hxx) \
-	$(wf_GEN_ooxml_FactoryValues_cxx) \
-	$(wf_GEN_ooxml_FastTokens_hxx) \
-	$(wf_GEN_ooxml_GperfFastToken_hxx) \
-	$(wf_GEN_ooxml_NamespaceIds_hxx) \
-	$(wf_GEN_model_QNameToStr_cxx) \
-	$(wf_GEN_model_SprmCodeToStr_cxx) \
-	$(patsubst %,OOXMLFactory_%.hxx,$(WRITERFILTER_OOXMLNAMESPACES)) \
-	$(patsubst %,OOXMLFactory_%.cxx,$(WRITERFILTER_OOXMLNAMESPACES)) \
-
commit d26e13bd7a8693867ab86eabec50212c95d4f3f6
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Fri Mar 30 20:17:20 2012 +0200

    jvmfwk: use CustomTarget makefile

diff --git a/jvmfwk/CustomTarget_jreproperties.mk b/jvmfwk/CustomTarget_jreproperties.mk
new file mode 100644
index 0000000..6b49d64
--- /dev/null
+++ b/jvmfwk/CustomTarget_jreproperties.mk
@@ -0,0 +1,40 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,jvmfwk/jreproperties,new_style))
+
+JFJP := $(call gb_CustomTarget_get_workdir,jvmfwk/jreproperties)
+
+$(call gb_CustomTarget_get_target,jvmfwk/jreproperties) : $(JFJP)/JREProperties.class
+
+$(JFJP)/JREProperties.class : $(SRCDIR)/jvmfwk/plugins/sunmajor/pluginlib/JREProperties.java \
+		| $(JFJP)/.dir
+	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),JCS,1)
+	$(call gb_Helper_abbreviate_dirs_native, \
+	cd $(dir $@) && $(gb_JavaClassSet_JAVACCOMMAND) $(gb_JavaClassSet_JAVACDEBUG) -d $(dir $@) $^)
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/jvmfwk/Module_jvmfwk.mk b/jvmfwk/Module_jvmfwk.mk
index 381af36..6757b90 100644
--- a/jvmfwk/Module_jvmfwk.mk
+++ b/jvmfwk/Module_jvmfwk.mk
@@ -36,6 +36,7 @@ $(eval $(call gb_Module_add_targets,jvmfwk,\
 ifneq ($(SOLAR_JAVA),)
 
 $(eval $(call gb_Module_add_targets,jvmfwk,\
+    CustomTarget_jreproperties \
     Library_sunjavaplugin \
     Package_jreproperties \
 ))
diff --git a/jvmfwk/Package_jreproperties.mk b/jvmfwk/Package_jreproperties.mk
index 4e35e7e..f8449b7 100644
--- a/jvmfwk/Package_jreproperties.mk
+++ b/jvmfwk/Package_jreproperties.mk
@@ -25,13 +25,7 @@
 # in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
 # instead of those above.
 
-$(eval $(call gb_Package_Package,jvmfwk_jreproperties,$(WORKDIR)/CustomTarget/jvmfwk/plugins/sunmajor/pluginlib))
-
-$(eval $(call gb_Package_add_customtarget,jvmfwk_jreproperties,jvmfwk/plugins/sunmajor/pluginlib))
-
-$(eval $(call gb_CustomTarget_add_dependencies,jvmfwk/plugins/sunmajor/pluginlib,\
-    jvmfwk/plugins/sunmajor/pluginlib/JREProperties.java \
-))
+$(eval $(call gb_Package_Package,jvmfwk_jreproperties,$(call gb_CustomTarget_get_workdir,jvmfwk/jreproperties)))
 
 $(eval $(call gb_Package_add_file,jvmfwk_jreproperties,bin/JREProperties.class,JREProperties.class))
 $(eval $(call gb_Package_add_file,jvmfwk_jreproperties,lib/JREProperties.class,JREProperties.class))
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/Makefile b/jvmfwk/plugins/sunmajor/pluginlib/Makefile
deleted file mode 100644
index b190038..0000000
--- a/jvmfwk/plugins/sunmajor/pluginlib/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-include $(GBUILDDIR)/gbuild.mk
-
-JREProperties.class : $(SRCDIR)/jvmfwk/plugins/sunmajor/pluginlib/JREProperties.java
-	$(call gb_Helper_abbreviate_dirs_native, \
-	$(gb_JavaClassSet_JAVACCOMMAND) $(gb_JavaClassSet_JAVACDEBUG) -d $(dir $@) $^)
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : JREProperties.class
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
commit 58404101e8cd436131fe0e8a36b467f167d7b8df
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sat Mar 31 00:51:19 2012 +0200

    filter: use CustomTarget makefile

diff --git a/filter/CustomTarget_svg.mk b/filter/CustomTarget_svg.mk
new file mode 100644
index 0000000..29156a7
--- /dev/null
+++ b/filter/CustomTarget_svg.mk
@@ -0,0 +1,76 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2011 Michael Stahl <mst at openoffice.org> (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,filter/source/svg,new_style))
+
+FISS := $(call gb_CustomTarget_get_workdir,filter/source/svg)
+
+SRCDIR_FILTER := $(SRCDIR)/filter/source/svg
+WORKDIR_FILTER := $(FISS)
+
+filter_SRC_svg_Tokens := $(SRCDIR_FILTER)/tokens.txt
+filter_SRC_svg_GenToken := $(SRCDIR_FILTER)/gentoken.pl
+filter_SRC_svg_PresentationEngine := $(SRCDIR_FILTER)/presentation_engine.js
+filter_SRC_svg_Js2Hxx := $(SRCDIR_FILTER)/js2hxx.py
+
+filter_GEN_svg_Tokens_gperf := $(WORKDIR_FILTER)/tokens.gperf
+filter_GEN_svg_Tokens_hxx := $(WORKDIR_FILTER)/tokens.hxx
+filter_GEN_svg_Tokens_cxx := $(WORKDIR_FILTER)/tokens.cxx
+filter_GEN_svg_Script_hxx := $(WORKDIR_FILTER)/svgscript.hxx
+
+$(filter_GEN_svg_Tokens_gperf) : \
+			$(filter_SRC_svg_GenToken) $(filter_SRC_svg_Tokens) | $(FISS)/.dir
+	$(call gb_Output_announce,$@,build,GPF,3)
+	$(call gb_Helper_abbreviate_dirs, \
+		$(PERL) $(filter_SRC_svg_GenToken) $(filter_SRC_svg_Tokens) \
+			$(filter_GEN_svg_Tokens_hxx) $(filter_GEN_svg_Tokens_gperf))
+
+# dummy rule: both files generated by recipe above
+$(filter_GEN_svg_Tokens_hxx) : $(filter_GEN_svg_Tokens_gperf)
+
+$(filter_GEN_svg_Tokens_cxx) : $(filter_GEN_svg_Tokens_gperf)
+	$(call gb_Output_announce,$@,build,GPF,1)
+	$(call gb_Helper_abbreviate_dirs, \
+		 $(GPERF) --compare-strncmp -C -m 20  $(filter_GEN_svg_Tokens_gperf) \
+			 | sed -e "s/(char\*)0/(char\*)0$(COMMA) 0/g" \
+			 > $(filter_GEN_svg_Tokens_cxx))
+
+$(filter_GEN_svg_Script_hxx) : \
+			$(filter_SRC_svg_PresentationEngine) $(filter_SRC_svg_Js2Hxx) | $(FISS)/.dir
+	$(call gb_Output_announce,$@,build,PY ,1)
+	$(call gb_Helper_abbreviate_dirs_native, \
+		$(gb_PYTHON) $(filter_SRC_svg_Js2Hxx) \
+			$(filter_SRC_svg_PresentationEngine) \
+			$(filter_GEN_svg_Script_hxx))
+
+$(call gb_CustomTarget_get_target,filter/source/svg) : \
+	$(filter_GEN_svg_Tokens_gperf) \
+	$(filter_GEN_svg_Tokens_hxx) \
+	$(filter_GEN_svg_Tokens_cxx) \
+	$(filter_GEN_svg_Script_hxx) \
+
+# vim: set noet sw=4 ts=4:
diff --git a/filter/Library_svgfilter.mk b/filter/Library_svgfilter.mk
index 8b0e056..567c296 100644
--- a/filter/Library_svgfilter.mk
+++ b/filter/Library_svgfilter.mk
@@ -19,7 +19,7 @@
 
 $(eval $(call gb_Library_Library,svgfilter))
 
-$(eval $(call gb_Library_add_package_headers,svgfilter,filter_generated))
+$(eval $(call gb_Library_add_custom_headers,svgfilter,filter/source/svg))
 
 $(eval $(call gb_Library_set_componentfile,svgfilter,filter/source/svg/svgfilter))
 
@@ -32,11 +32,6 @@ $(eval $(call gb_Library_add_api,svgfilter,\
 	offapi \
 ))
 
-$(eval $(call gb_Library_set_include,svgfilter,\
-	$$(INCLUDE) \
-	-I$(WORKDIR)/CustomTarget/filter/source/svg \
-))
-
 $(eval $(call gb_Library_add_linked_libs,svgfilter,\
 	svxcore \
 	editeng \
diff --git a/filter/Module_filter.mk b/filter/Module_filter.mk
index 24fe97c..9bcfe3b 100644
--- a/filter/Module_filter.mk
+++ b/filter/Module_filter.mk
@@ -26,6 +26,7 @@ $(eval $(call gb_Module_add_targets,filter,\
 	AllLangResTarget_t602filter \
 	AllLangResTarget_xsltdlg \
 	Configuration_filter \
+	CustomTarget_svg \
 	Library_PptImporter \
 	Library_egi \
 	Library_eme \
@@ -64,7 +65,6 @@ $(eval $(call gb_Module_add_targets,filter,\
 	Library_xsltfilter \
 	Package_inc \
 	Package_docbook \
-	Package_filter_generated \
 	Package_xslt \
 ))
 
diff --git a/filter/Package_filter_generated.mk b/filter/Package_filter_generated.mk
deleted file mode 100644
index d93416b..0000000
--- a/filter/Package_filter_generated.mk
+++ /dev/null
@@ -1,39 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2011 Michael Stahl <mst at openoffice.org> (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-$(eval $(call gb_Package_Package,filter_generated,$(WORKDIR)/CustomTarget/filter/source/svg))
-
-$(eval $(call gb_Package_add_customtarget,filter_generated,filter/source/svg))
-
-$(eval $(call gb_CustomTarget_add_dependencies,filter/source/svg,\
-	filter/source/svg/gentoken.pl \
-	filter/source/svg/tokens.txt \
-	filter/source/svg/presentation_engine.js \
-	filter/source/svg/js2hxx.py \
-))
-
-# vim: set noet sw=4 ts=4:
diff --git a/filter/source/svg/Makefile b/filter/source/svg/Makefile
deleted file mode 100644
index 31a4244..0000000
--- a/filter/source/svg/Makefile
+++ /dev/null
@@ -1,77 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2011 Michael Stahl <mst at openoffice.org> (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-SRCDIR_FILTER := $(dir $(realpath $(firstword $(MAKEFILE_LIST))))
-WORKDIR_FILTER := .
-
-gb_PARTIALBUILD:=T
-include $(GBUILDDIR)/gbuild.mk
-
-filter_SRC_svg_Tokens := $(SRCDIR_FILTER)/tokens.txt
-filter_SRC_svg_GenToken := $(SRCDIR_FILTER)/gentoken.pl
-filter_SRC_svg_PresentationEngine := $(SRCDIR_FILTER)/presentation_engine.js
-filter_SRC_svg_Js2Hxx := $(SRCDIR_FILTER)/js2hxx.py
-
-filter_GEN_svg_Tokens_gperf := $(WORKDIR_FILTER)/tokens.gperf
-filter_GEN_svg_Tokens_hxx := $(WORKDIR_FILTER)/tokens.hxx
-filter_GEN_svg_Tokens_cxx := $(WORKDIR_FILTER)/tokens.cxx
-filter_GEN_svg_Script_hxx := $(WORKDIR_FILTER)/svgscript.hxx
-
-$(filter_GEN_svg_Tokens_gperf) : \
-			$(filter_SRC_svg_GenToken) $(filter_SRC_svg_Tokens)
-	$(call gb_Output_announce,$@,build,GPF,3)
-	$(call gb_Helper_abbreviate_dirs, \
-		$(PERL) $(filter_SRC_svg_GenToken) $(filter_SRC_svg_Tokens) \
-			$(filter_GEN_svg_Tokens_hxx) $(filter_GEN_svg_Tokens_gperf))
-
-# dummy rule: both files generated by recipe above
-$(filter_GEN_svg_Tokens_hxx) : $(filter_GEN_svg_Tokens_gperf)
-
-$(filter_GEN_svg_Tokens_cxx) : $(filter_GEN_svg_Tokens_gperf)
-	$(call gb_Output_announce,$@,build,GPF,1)
-	$(call gb_Helper_abbreviate_dirs, \
-		 $(GPERF) --compare-strncmp -C -m 20  $(filter_GEN_svg_Tokens_gperf) \
-			 | sed -e "s/(char\*)0/(char\*)0$(COMMA) 0/g" \
-			 > $(filter_GEN_svg_Tokens_cxx))
-
-$(filter_GEN_svg_Script_hxx) : \
-			$(filter_SRC_svg_PresentationEngine) $(filter_SRC_svg_Js2Hxx)
-	$(call gb_Output_announce,$@,build,PY ,1)
-	$(call gb_Helper_abbreviate_dirs_native, \
-		$(gb_PYTHON) $(filter_SRC_svg_Js2Hxx) \
-			$(filter_SRC_svg_PresentationEngine) \
-			$(filter_GEN_svg_Script_hxx))
-
-.DEFAULT_GOAL:=all
-.PHONY: all
-all : \
-	$(filter_GEN_svg_Tokens_gperf) \
-	$(filter_GEN_svg_Tokens_hxx) \
-	$(filter_GEN_svg_Tokens_cxx) \
-	$(filter_GEN_svg_Script_hxx) \
-
-# vim: set noet sw=4 ts=4:
commit d5c18a48f82a7336536b6a353f267aefc1142455
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Fri Mar 30 20:29:04 2012 +0200

    desktop: use CustomTarget makefile

diff --git a/desktop/CustomTarget_soffice.mk b/desktop/CustomTarget_soffice.mk
new file mode 100644
index 0000000..5e12856
--- /dev/null
+++ b/desktop/CustomTarget_soffice.mk
@@ -0,0 +1,42 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+# Version: MPL 1.1 / GPLv3+ / LGPLv3+
+#
+# The contents of this file are subject to the Mozilla Public License Version
+# 1.1 (the "License"); you may not use this file except in compliance with
+# the License or as specified alternatively below. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS IS" basis,
+# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+# for the specific language governing rights and limitations under the
+# License.
+#
+# Major Contributor(s):
+# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon at redhat.com>
+#  (initial developer)
+#
+# All Rights Reserved.
+#
+# For minor contributions see the git repository.
+#
+# Alternatively, the contents of this file may be used under the terms of
+# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+# instead of those above.
+
+$(eval $(call gb_CustomTarget_CustomTarget,desktop/soffice,new_style))
+
+DESO := $(call gb_CustomTarget_get_workdir,desktop/soffice)
+
+$(call gb_CustomTarget_get_target,desktop/soffice) : $(DESO)/soffice.sh
+
+$(DESO)/soffice.sh : $(SRCDIR)/desktop/scripts/soffice.sh | $(DESO)/.dir
+	$(call gb_Output_announce,$(subst $(WORKDIR)/,,$@),$(true),SED,1)
+ifneq ($(JITC_PROCESSOR_TYPE),)
+	sed -e "s/^#@JITC_PROCESSOR_TYPE_EXPORT@/export JITC_PROCESSOR_TYPE=$(JITC_PROCESSOR_TYPE)/" $< > $@
+else
+	cp $< $@
+endif
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/desktop/Module_desktop.mk b/desktop/Module_desktop.mk
index c861ae8..abafafb 100644
--- a/desktop/Module_desktop.mk
+++ b/desktop/Module_desktop.mk
@@ -60,6 +60,7 @@ $(eval $(call gb_Module_add_targets,desktop,\
 ifneq ($(OS),MACOSX)
 ifneq ($(OS),WNT)
 $(eval $(call gb_Module_add_targets,desktop,\
+    CustomTarget_soffice \
     Package_soffice_sh \
 ))
 endif
diff --git a/desktop/Package_soffice_sh.mk b/desktop/Package_soffice_sh.mk
index 5cf1df3..48a1f9c 100644
--- a/desktop/Package_soffice_sh.mk
+++ b/desktop/Package_soffice_sh.mk
@@ -25,14 +25,8 @@
 # in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
 # instead of those above.
 
-$(eval $(call gb_Package_Package,desktop_soffice_sh,$(WORKDIR)/CustomTarget/desktop/scripts))
+$(eval $(call gb_Package_Package,desktop_soffice_sh,$(call gb_CustomTarget_get_workdir,desktop/soffice)))
 
 $(eval $(call gb_Package_add_file,desktop_soffice_sh,bin/soffice,soffice.sh))
 
-$(eval $(call gb_Package_add_customtarget,desktop_soffice_sh,desktop/scripts))
-
-$(eval $(call gb_CustomTarget_add_dependencies,desktop/scripts,\
-    desktop/scripts/soffice.sh \
-))
-
 # vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/desktop/scripts/Makefile b/desktop/scripts/Makefile
deleted file mode 100644
index a654b6b..0000000
--- a/desktop/scripts/Makefile
+++ /dev/null
@@ -1,39 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-# Version: MPL 1.1 / GPLv3+ / LGPLv3+
-#
-# The contents of this file are subject to the Mozilla Public License Version
-# 1.1 (the "License"); you may not use this file except in compliance with
-# the License or as specified alternatively below. You may obtain a copy of
-# the License at http://www.mozilla.org/MPL/
-#
-# Software distributed under the License is distributed on an "AS IS" basis,
-# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-# for the specific language governing rights and limitations under the
-# License.
-#
-# Major Contributor(s):
-# Copyright (C) 2010 Red Hat, Inc., David Tardon <dtardon at redhat.com>
-#  (initial developer)
-#
-# All Rights Reserved.
-#
-# For minor contributions see the git repository.
-#
-# Alternatively, the contents of this file may be used under the terms of
-# either the GNU General Public License Version 3 or later (the "GPLv3+"), or
-# the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
-# in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
-# instead of those above.
-
-soffice.sh : $(SRCDIR)/desktop/scripts/soffice.sh
-ifneq ($(JITC_PROCESSOR_TYPE),)
-	sed -e "s/^#@JITC_PROCESSOR_TYPE_EXPORT@/export JITC_PROCESSOR_TYPE=$(JITC_PROCESSOR_TYPE)/" $< > $@
-else
-	cp $< $@
-endif
-
-.DEFAULT_GOAL := all
-.PHONY : all
-all : soffice.sh
-
-# vim:set shiftwidth=4 tabstop=4 noexpandtab:
commit 4873eb6f5c79f3637b209888b7ddb51d66abbfb6
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sun Apr 1 11:55:25 2012 +0200

    gbuild: do not let generated source files depend on headers (ver. 2)

diff --git a/solenv/gbuild/LinkTarget.mk b/solenv/gbuild/LinkTarget.mk
index a217086..746ddfa 100644
--- a/solenv/gbuild/LinkTarget.mk
+++ b/solenv/gbuild/LinkTarget.mk
@@ -745,8 +745,11 @@ define gb_LinkTarget_add_generated_c_object
 $(call gb_LinkTarget_get_target,$(1)) : GENCOBJECTS += $(2)
 $(call gb_LinkTarget_get_clean_target,$(1)) : GENCOBJECTS += $(2)
 
+# Make just needs to know gb_GenCObject_get_source is a real target.
+# Then it can use implicit rule for gb_GenCObject_get_target.
+$(call gb_GenCObject_get_source,$(2)) : | $(gb_Helper_MISCDUMMY)
 $(call gb_LinkTarget_get_target,$(1)) : $(call gb_GenCObject_get_target,$(2))
-$(call gb_GenCObject_get_source,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
+$(call gb_GenCObject_get_target,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
 $(call gb_GenCObject_get_target,$(2)) : T_CFLAGS += $(3)
 $(call gb_GenCObject_get_target,$(2)) : \
 	OBJECTOWNER := $(call gb_Object__owner,$(2),$(1))
@@ -762,8 +765,11 @@ define gb_LinkTarget_add_generated_cxx_object
 $(call gb_LinkTarget_get_target,$(1)) : GENCXXOBJECTS += $(2)
 $(call gb_LinkTarget_get_clean_target,$(1)) : GENCXXOBJECTS += $(2)
 
+# Make just needs to know gb_GenCxxObject_get_source is a real target.
+# Then it can use implicit rule for gb_GenCxxObject_get_target.
+$(call gb_GenCxxObject_get_source,$(2)) : | $(gb_Helper_MISCDUMMY)
 $(call gb_LinkTarget_get_target,$(1)) : $(call gb_GenCxxObject_get_target,$(2))
-$(call gb_GenCxxObject_get_source,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
+$(call gb_GenCxxObject_get_target,$(2)) : | $(call gb_LinkTarget_get_headers_target,$(1))
 $(call gb_GenCxxObject_get_target,$(2)) : T_CXXFLAGS += $(3)
 $(call gb_GenCxxObject_get_target,$(2)) : \
 	OBJECTOWNER := $(call gb_Object__owner,$(2),$(1))


More information about the Libreoffice-commits mailing list