summaryrefslogtreecommitdiff
path: root/external/libassuan
diff options
context:
space:
mode:
authorDavid Ostrovsky <david@ostrovsky.org>2017-09-24 10:28:05 +0200
committerThorsten Behrens <Thorsten.Behrens@CIB.de>2017-11-22 17:54:58 +0100
commit5f981d30e2f186ab6b7fc925832b6eb1ae658308 (patch)
tree2b62f6060bfe1788c7937325aac0b2bc57b9eada /external/libassuan
parent4be15fdd7974564faa97454fda415b3882c4142f (diff)
gpg4libre: build libassuan natively on windows
Change-Id: Id374ebc5ed70a1b4313dc74461524ac2b864b114 Reviewed-on: https://gerrit.libreoffice.org/42745 Reviewed-by: Siegmund Gorr <siegmund.gorr@cib.de> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de> Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'external/libassuan')
-rw-r--r--external/libassuan/ExternalProject_libassuan.mk16
-rw-r--r--external/libassuan/UnpackedTarball_libassuan.mk1
-rwxr-xr-xexternal/libassuan/w32-build-fixes.patch.177
3 files changed, 94 insertions, 0 deletions
diff --git a/external/libassuan/ExternalProject_libassuan.mk b/external/libassuan/ExternalProject_libassuan.mk
index bcfc08a82cca..e796f16bf017 100644
--- a/external/libassuan/ExternalProject_libassuan.mk
+++ b/external/libassuan/ExternalProject_libassuan.mk
@@ -19,6 +19,21 @@ $(eval $(call gb_ExternalProject_use_externals,libassuan,\
libgpg-error \
))
+ifeq ($(COM),MSC)
+$(call gb_ExternalProject_get_state_target,libassuan,build):
+ $(call gb_ExternalProject_run,build,\
+ autoreconf \
+ && ./configure \
+ --enable-static \
+ --disable-shared \
+ CXXFLAGS="$(CXXFLAGS)" \
+ GPG_ERROR_CFLAGS="$(GPG_ERROR_CFLAGS)" \
+ GPG_ERROR_LIBS="$(GPG_ERROR_LIBS)" \
+ --host=$(if $(filter INTEL,$(CPUNAME)),i686-mingw32,x86_64-w64-mingw32) \
+ && $(MAKE) \
+ )
+
+else
$(call gb_ExternalProject_get_state_target,libassuan,build):
$(call gb_ExternalProject_run,build,\
autoreconf \
@@ -32,4 +47,5 @@ $(call gb_ExternalProject_get_state_target,libassuan,build):
&& $(MAKE) \
)
+endif
# vim: set noet sw=4 ts=4:
diff --git a/external/libassuan/UnpackedTarball_libassuan.mk b/external/libassuan/UnpackedTarball_libassuan.mk
index 924d610bf9c9..f23608eb6a6c 100644
--- a/external/libassuan/UnpackedTarball_libassuan.mk
+++ b/external/libassuan/UnpackedTarball_libassuan.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libassuan,0))
$(eval $(call gb_UnpackedTarball_add_patches,libassuan, \
external/libassuan/find-libgpg-error.patch \
external/libassuan/fix-autoconf-macros.patch \
+ $(if $(filter MSC,$(COM)),external/libassuan/w32-build-fixes.patch.1) \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/libassuan/w32-build-fixes.patch.1 b/external/libassuan/w32-build-fixes.patch.1
new file mode 100755
index 000000000000..c9250c4e5573
--- /dev/null
+++ b/external/libassuan/w32-build-fixes.patch.1
@@ -0,0 +1,77 @@
+--- libassuan.orig/src/Makefile.in 2017-09-15 08:16:41.601057500 +0200
++++ libassuan/src/Makefile.in 2017-09-24 13:01:24.950711300 +0200
+@@ -424,7 +424,7 @@
+ nodist_include_HEADERS = assuan.h
+ @HAVE_LD_VERSION_SCRIPT_FALSE@libassuan_version_script_cmd =
+ @HAVE_LD_VERSION_SCRIPT_TRUE@libassuan_version_script_cmd = -Wl,--version-script=$(srcdir)/libassuan.vers
+-CLEANFILES = mkheader assuan.h
++CLEANFILES = mkheader$(EXEEXT) assuan.h
+ BUILT_SOURCES = assuan.h
+ parts_of_assuan_h = \
+ posix-includes.inc.h w32-includes.inc.h \
+@@ -1183,10 +1183,10 @@
+ @HAVE_W32CE_SYSTEM_TRUE@ mv -f $(DESTDIR)$(bindir)/libgpgcedev-0.dll \
+ @HAVE_W32CE_SYSTEM_TRUE@ $(DESTDIR)$(bindir)/gpgcedev.dll
+
+-mkheader: mkheader.c Makefile
++mkheader$(EXEEXT): mkheader.c Makefile
+ $(CC_FOR_BUILD) -I. -I$(srcdir) -o $@ $(srcdir)/mkheader.c
+
+-assuan.h: assuan.h.in mkheader $(parts_of_assuan_h)
++assuan.h: assuan.h.in mkheader$(EXEEXT) $(parts_of_assuan_h)
+ ./mkheader $(host_os) $(srcdir)/assuan.h.in \
+ @VERSION@ @VERSION_NUMBER@ >$@
+
+--- libassuan.orig/src/mkheader.c 2013-03-15 20:26:09.000000000 +0100
++++ libassuan/src/mkheader.c 2017-09-24 14:17:33.584583300 +0200
+@@ -99,7 +99,7 @@
+ "# include <unistd.h>\n"
+ "#endif\n", stdout);
+ else
+- fputs ("#include <unistd.h>\n", stdout);
++ fputs ("#include <io.h>\n", stdout);
+ }
+ else if (!strcmp (tag, "include:types"))
+ {
+diff -ru libassuan.orig/src/Makefile.am libassuan/src/Makefile.am
+--- libassuan.orig/src/Makefile.am 2017-09-24 14:20:05.906065400 +0200
++++ libassuan/src/Makefile.am 2017-09-24 14:40:59.038850200 +0200
+@@ -142,11 +142,11 @@
+ $(DESTDIR)$(bindir)/gpgcedev.dll
+ endif
+
+-mkheader: mkheader.c Makefile
++mkheader$(EXEEXT): mkheader.c Makefile
+ $(CC_FOR_BUILD) -I. -I$(srcdir) -o $@ $(srcdir)/mkheader.c
+
+-assuan.h: assuan.h.in mkheader $(parts_of_assuan_h)
+- ./mkheader $(host_os) $(srcdir)/assuan.h.in \
++assuan.h: assuan.h.in mkheader$(EXEEXT) $(parts_of_assuan_h)
++ ./mkheader$(EXEEXT) $(host_os) $(srcdir)/assuan.h.in \
+ @VERSION@ @VERSION_NUMBER@ >$@
+
+
+diff -ru libassuan.orig/src/assuan-handler.c libassuan/src/assuan-handler.c
+--- libassuan.orig/src/assuan-handler.c 2016-06-25 16:27:49.000000000 +0200
++++ libassuan/src/assuan-handler.c 2017-09-24 15:32:51.200956200 +0200
+@@ -395,7 +395,7 @@
+
+ { "INPUT", std_handler_input, std_help_input, 0 },
+ { "OUTPUT", std_handler_output, std_help_output, 0 },
+- { } };
++};
+
+
+ /**
+diff -ru libassuan.orig/Makefile.am libassuan/Makefile.am
+--- libassuan.orig/Makefile.am 2016-07-14 10:09:22.000000000 +0200
++++ libassuan/Makefile.am 2017-09-25 21:20:19.928317500 +0200
+@@ -28,7 +28,7 @@
+ tests/ChangeLog-2011 contrib/ChangeLog-2011 \
+ build-aux/git-log-footer build-aux/git-log-fix
+
+-SUBDIRS = m4 src doc tests
++SUBDIRS = m4 src doc
+
+
+ dist-hook: gen-ChangeLog