summaryrefslogtreecommitdiffstats
path: root/external/libcdr
diff options
context:
space:
mode:
Diffstat (limited to 'external/libcdr')
-rw-r--r--external/libcdr/ExternalProject_libcdr.mk49
-rw-r--r--external/libcdr/Makefile7
-rw-r--r--external/libcdr/Module_libcdr.mk17
-rw-r--r--external/libcdr/README3
-rw-r--r--external/libcdr/UnpackedTarball_libcdr.mk23
-rw-r--r--external/libcdr/ax_gcc_func_attribute.m4.patch11
-rw-r--r--external/libcdr/libcdr-visibility-win.patch11
7 files changed, 121 insertions, 0 deletions
diff --git a/external/libcdr/ExternalProject_libcdr.mk b/external/libcdr/ExternalProject_libcdr.mk
new file mode 100644
index 000000000..c9f5401ac
--- /dev/null
+++ b/external/libcdr/ExternalProject_libcdr.mk
@@ -0,0 +1,49 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,libcdr))
+
+$(eval $(call gb_ExternalProject_use_autoconf,libcdr,build))
+
+$(eval $(call gb_ExternalProject_register_targets,libcdr,\
+ build \
+))
+
+$(eval $(call gb_ExternalProject_use_externals,libcdr,\
+ boost_headers \
+ icu \
+ lcms2 \
+ revenge \
+ zlib \
+))
+
+$(call gb_ExternalProject_get_state_target,libcdr,build) :
+ $(call gb_Trace_StartRange,libcdr,EXTERNAL)
+ $(call gb_ExternalProject_run,build,\
+ export PKG_CONFIG="" \
+ && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \
+ --with-pic \
+ --enable-static \
+ --disable-shared \
+ --without-docs \
+ --disable-tools \
+ $(if $(ENABLE_DEBUG),--enable-debug,--disable-debug) \
+ --disable-werror \
+ --disable-weffc \
+ $(if $(gb_FULLDEPS),,--disable-dependency-tracking) \
+ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \
+ CXXFLAGS="$(gb_CXXFLAGS) $(call gb_ExternalProject_get_build_flags,libcdr)" \
+ CPPFLAGS="$(CPPFLAGS) $(BOOST_CPPFLAGS)" \
+ LDFLAGS="$(call gb_ExternalProject_get_link_flags,libcdr)" \
+ $(gb_CONFIGURE_PLATFORMS) \
+ && $(MAKE) \
+ )
+ $(call gb_Trace_EndRange,libcdr,EXTERNAL)
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/libcdr/Makefile b/external/libcdr/Makefile
new file mode 100644
index 000000000..e4968cf85
--- /dev/null
+++ b/external/libcdr/Makefile
@@ -0,0 +1,7 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/libcdr/Module_libcdr.mk b/external/libcdr/Module_libcdr.mk
new file mode 100644
index 000000000..5f8acd374
--- /dev/null
+++ b/external/libcdr/Module_libcdr.mk
@@ -0,0 +1,17 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,libcdr))
+
+$(eval $(call gb_Module_add_targets,libcdr,\
+ ExternalProject_libcdr \
+ UnpackedTarball_libcdr \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/libcdr/README b/external/libcdr/README
new file mode 100644
index 000000000..4337b722b
--- /dev/null
+++ b/external/libcdr/README
@@ -0,0 +1,3 @@
+Library parsing the Corel cdr documents.
+
+[https://wiki.documentfoundation.org/DLP/Libraries/libcdr]
diff --git a/external/libcdr/UnpackedTarball_libcdr.mk b/external/libcdr/UnpackedTarball_libcdr.mk
new file mode 100644
index 000000000..f0e80f06f
--- /dev/null
+++ b/external/libcdr/UnpackedTarball_libcdr.mk
@@ -0,0 +1,23 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,libcdr))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,libcdr,$(CDR_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_set_patchlevel,libcdr,0))
+
+$(eval $(call gb_UnpackedTarball_update_autoconf_configs,libcdr))
+
+$(eval $(call gb_UnpackedTarball_add_patches,libcdr, \
+ external/libcdr/libcdr-visibility-win.patch \
+ external/libcdr/ax_gcc_func_attribute.m4.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/libcdr/ax_gcc_func_attribute.m4.patch b/external/libcdr/ax_gcc_func_attribute.m4.patch
new file mode 100644
index 000000000..37f4edf0b
--- /dev/null
+++ b/external/libcdr/ax_gcc_func_attribute.m4.patch
@@ -0,0 +1,11 @@
+--- configure
++++ configure
+@@ -19167,7 +19167,7 @@
+
+ _ACEOF
+ if ac_fn_cxx_try_link "$LINENO"; then :
+- if test -s conftest.err; then :
++ if grep -- -Wattributes conftest.err; then :
+ ax_cv_have_func_attribute_visibility=no
+ else
+ ax_cv_have_func_attribute_visibility=yes
diff --git a/external/libcdr/libcdr-visibility-win.patch b/external/libcdr/libcdr-visibility-win.patch
new file mode 100644
index 000000000..7700cfd32
--- /dev/null
+++ b/external/libcdr/libcdr-visibility-win.patch
@@ -0,0 +1,11 @@
+--- configure.dt 2018-12-29 16:23:02.355271146 +0100
++++ configure 2018-12-29 16:23:21.644060142 +0100
+@@ -19116,6 +19116,8 @@
+
+
+ if test $platform_win32 = yes; then :
++ HAVE_VISIBILITY_TRUE='#'
++ HAVE_VISIBILITY_FALSE=
+
+ else
+