[Libreoffice-commits] .: 2 commits - 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

David Tardon dtardon at kemper.freedesktop.org
Sun Mar 4 01:33:58 PST 2012


 extensions/Library_so_activex.mk        |   17 ++---------
 extensions/Library_so_activex_x64.mk    |   12 +++-----
 extensions/Module_extensions.mk         |    2 +
 extensions/Package_so_activex_idl.mk    |   36 ++++++++++++++++++++++++
 extensions/Package_so_activex_x64.mk    |   41 +++++++++++++++++++++++++++
 extensions/WinResTarget_activex.mk      |    8 +++--
 extensions/source/activex/Makefile      |   41 +++++++++++++++++++++++++++
 extensions/source/activex/idl/Makefile  |   48 ++++++++++++++++++++++++++++++++
 extensions/source/activex/so_activex.rc |    2 -
 9 files changed, 183 insertions(+), 24 deletions(-)

New commits:
commit 09888c688ebfdd43a5cb1e44b6c9776eedcf5c3c
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Mar 4 09:57:54 2012 +0100

    fix building of so_activex (fdo#46847)

diff --git a/extensions/Library_so_activex.mk b/extensions/Library_so_activex.mk
index 292b7e1..235bcbe 100644
--- a/extensions/Library_so_activex.mk
+++ b/extensions/Library_so_activex.mk
@@ -30,22 +30,13 @@
 
 $(eval $(call gb_Library_Library,so_activex))
 
-$(SRCDIR)/extensions/source/activex/so_activex.cxx: $(WORKDIR)/CustomTarget/so_activex/so_activex.tlb
-
-$(WORKDIR)/CustomTarget/so_activex/so_activex.tlb: $(SRCDIR)/extensions/source/activex/so_activex.idl
-	mkdir -p $(WORKDIR)/CustomTarget/so_activex
-	midl.exe -out $(call gb_Helper_convert_native,$(WORKDIR)/CustomTarget/so_activex) -Oicf $(call gb_Helper_convert_native,$<) \
-	$(foreach i,$(SOLARINC_FOR_BUILD), $(patsubst -I,/I,$(i)))
-
-$(call gb_Library_get_clean_target,so_activex) : extensions_activex_idlclean
-
-.PHONY: extensions_activex_idlclean
-extensions_activex_idlclean:
-	rm -rf $(WORKDIR)/CustomTarget/so_activex
+$(eval $(call gb_Library_add_package_headers,so_activex,\
+    extensions_so_activex_idl \
+))
 
 $(eval $(call gb_Library_set_include,so_activex,\
 	$$(INCLUDE) \
-	-I$(WORKDIR)/CustomTarget/so_activex \
+	-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 6283900..af70b66 100644
--- a/extensions/Library_so_activex_x64.mk
+++ b/extensions/Library_so_activex_x64.mk
@@ -32,16 +32,15 @@ $(eval $(call gb_Library_Library,so_activex_x64))
 
 $(eval $(call gb_Library_set_x64,so_activex_x64,YES))
 
-$(SRCDIR)/extensions/source/activex/so_activex.cxx: $(WORKDIR)/CustomTarget/so_activex/so_activex.tlb
-
 $(eval $(call gb_Library_add_package_headers,so_activex_x64,\
+    extensions_so_activex_idl \
     extensions_so_activex_x64_sources \
 ))
 
 $(eval $(call gb_Library_set_include,so_activex_x64,\
 	$$(INCLUDE) \
 	-I$(SRCDIR)/extensions/source/activex \
-	-I$(WORKDIR)/CustomTarget/so_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 1be04f9..4e1b027 100644
--- a/extensions/Module_extensions.mk
+++ b/extensions/Module_extensions.mk
@@ -71,6 +71,7 @@ ifneq ($(DISABLE_ACTIVEX),TRUE)
 $(eval $(call gb_Module_add_targets,extensions,\
 	WinResTarget_activex \
 	Library_so_activex \
+	Package_so_activex_idl \
 ))
 
 ifeq ($(BUILD_X64),TRUE)
diff --git a/extensions/Package_so_activex_idl.mk b/extensions/Package_so_activex_idl.mk
new file mode 100644
index 0000000..b49c482
--- /dev/null
+++ b/extensions/Package_so_activex_idl.mk
@@ -0,0 +1,36 @@
+# -*- 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/WinResTarget_activex.mk b/extensions/WinResTarget_activex.mk
index fd7879c..7b9c137 100644
--- a/extensions/WinResTarget_activex.mk
+++ b/extensions/WinResTarget_activex.mk
@@ -39,11 +39,13 @@ endif
 
 $(eval $(call gb_WinResTarget_add_file,activex_res,extensions/source/activex/so_activex))
 
-$(SRCDIR)/extensions/source/activex/so_activex.rc: $(WORKDIR)/CustomTarget/so_activex/so_activex.tlb
-
 $(eval $(call gb_WinResTarget_set_defs,activex_res,\
 	$$(DEFS) \
-	-DMISC=$(call gb_Helper_convert_native,$(WORKDIR)/CustomTarget/so_activex) \
+	-DSO_ACTIVEX_TLB_DIR=$(call gb_Helper_convert_native,$(WORKDIR)/CustomTarget/extensions/source/activex/idl) \
 ))
 
+# 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)
+
 # vim:set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/extensions/source/activex/idl/Makefile b/extensions/source/activex/idl/Makefile
new file mode 100644
index 0000000..82e4f50
--- /dev/null
+++ b/extensions/source/activex/idl/Makefile
@@ -0,0 +1,48 @@
+# -*- 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.
+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 \
+		-0icf \
+		$(INCLUDE) \
+		$(SRCDIR)/extensions/source/activex/so_activex.idl
+
+.DEFAULT_GOAL := all
+.PHONY : all
+all : so_activex.tlb
+
+# vim:set shiftwidth=4 tabstop=4 noexpandtab:
diff --git a/extensions/source/activex/so_activex.rc b/extensions/source/activex/so_activex.rc
index adba0ee..d2a211e 100644
--- a/extensions/source/activex/so_activex.rc
+++ b/extensions/source/activex/so_activex.rc
@@ -104,7 +104,7 @@ END
 // Generated from the TEXTINCLUDE 3 resource.
 //
 
-1 TYPELIB MISC\so_activex.tlb
+1 TYPELIB SO_ACTIVEX_TLB_DIR\so_activex.tlb
 
 /////////////////////////////////////////////////////////////////////////////
 #endif    // not APSTUDIO_INVOKED
commit e358dc89fe45fe198b2fe420db5100098b6a3cfa
Author: David Tardon <dtardon at redhat.com>
Date:   Sun Mar 4 10:20:17 2012 +0100

    use custom target for copying sources

diff --git a/extensions/Library_so_activex_x64.mk b/extensions/Library_so_activex_x64.mk
index dfee1b8..6283900 100644
--- a/extensions/Library_so_activex_x64.mk
+++ b/extensions/Library_so_activex_x64.mk
@@ -34,6 +34,10 @@ $(eval $(call gb_Library_set_x64,so_activex_x64,YES))
 
 $(SRCDIR)/extensions/source/activex/so_activex.cxx: $(WORKDIR)/CustomTarget/so_activex/so_activex.tlb
 
+$(eval $(call gb_Library_add_package_headers,so_activex_x64,\
+    extensions_so_activex_x64_sources \
+))
+
 $(eval $(call gb_Library_set_include,so_activex_x64,\
 	$$(INCLUDE) \
 	-I$(SRCDIR)/extensions/source/activex \
@@ -48,11 +52,6 @@ $(eval $(call gb_Library_add_api,so_activex_x64,\
 
 $(eval $(call gb_Library_add_nativeres,so_activex_x64,activex_res))
 
-$(WORKDIR)/CustomTarget/extensions/source/activex/%.cxx : \
-		$(SRCDIR)/extensions/source/activex/%.cxx
-	mkdir -p $(dir $@)
-	cp $< $@
-
 $(eval $(call gb_Library_add_x64_generated_exception_objects,so_activex_x64,\
 	CustomTarget/extensions/source/activex/so_activex \
 	CustomTarget/extensions/source/activex/SOActiveX \
diff --git a/extensions/Module_extensions.mk b/extensions/Module_extensions.mk
index 97ad06d..1be04f9 100644
--- a/extensions/Module_extensions.mk
+++ b/extensions/Module_extensions.mk
@@ -76,6 +76,7 @@ $(eval $(call gb_Module_add_targets,extensions,\
 ifeq ($(BUILD_X64),TRUE)
 $(eval $(call gb_Module_add_targets,extensions,\
 	Library_so_activex_x64 \
+	Package_so_activex_x64 \
 ))
 endif # BUILD_X64
 endif # DISABLE_ACTIVEX
diff --git a/extensions/Package_so_activex_x64.mk b/extensions/Package_so_activex_x64.mk
new file mode 100644
index 0000000..952bb46
--- /dev/null
+++ b/extensions/Package_so_activex_x64.mk
@@ -0,0 +1,41 @@
+# -*- 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/source/activex/Makefile b/extensions/source/activex/Makefile
new file mode 100644
index 0000000..bf79e4c
--- /dev/null
+++ b/extensions/source/activex/Makefile
@@ -0,0 +1,41 @@
+# -*- 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)/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:


More information about the Libreoffice-commits mailing list