diff options
author | Jan-Marek Glogowski <glogow@fbihome.de> | 2021-04-23 13:45:05 +0200 |
---|---|---|
committer | Thorsten Behrens <thorsten.behrens@allotropia.de> | 2021-05-05 21:14:54 +0200 |
commit | 8a4173987edfeeb7e49c70617d43e3adc911d333 (patch) | |
tree | 24360e0c3fe2b2138f9a291f143f9a6667c53510 /external | |
parent | 013ddc4f5307df512767ca23b3922540b2b36d52 (diff) |
WASM: add initial support for Emscripten cross build
- configure with:
- --host=wasm64-local-emscripten
- had to make a few externals optional, so adding:
- --disable-nss
- --disable-cmis
- --disable-curl
Change-Id: I48d1c73d2675ad2e2beaf2c341578199efbd24ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111130
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Diffstat (limited to 'external')
63 files changed, 195 insertions, 73 deletions
diff --git a/external/apr/ExternalProject_apr.mk b/external/apr/ExternalProject_apr.mk index 1c94480e5ab7..7f3a631e933e 100644 --- a/external/apr/ExternalProject_apr.mk +++ b/external/apr/ExternalProject_apr.mk @@ -30,7 +30,7 @@ $(call gb_ExternalProject_get_state_target,apr,build): $(call gb_Trace_StartRange,apr,EXTERNAL) +$(call gb_ExternalProject_run,build,\ $(if $(ENABLE_MACOSX_SANDBOX),ac_cv_func_fdatasync=no) \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --enable-static --disable-shared \ --with-pic \ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\ diff --git a/external/apr/ExternalProject_apr_util.mk b/external/apr/ExternalProject_apr_util.mk index a311f32e8e01..a94b0e38d43b 100644 --- a/external/apr/ExternalProject_apr_util.mk +++ b/external/apr/ExternalProject_apr_util.mk @@ -31,7 +31,7 @@ else $(call gb_ExternalProject_get_state_target,apr_util,build): $(call gb_Trace_StartRange,apr_util,EXTERNAL) +$(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --enable-static --disable-shared \ --with-pic \ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\ diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk index bdacdcd9856e..c10ed5a55048 100644 --- a/external/boost/UnpackedTarball_boost.mk +++ b/external/boost/UnpackedTarball_boost.mk @@ -46,6 +46,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,boost,3)) $(eval $(call gb_UnpackedTarball_add_patches,boost,\ $(foreach patch,$(boost_patches),external/boost/$(patch)) \ + external/boost/boost-emscripten-noshm.patch.0 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/boost/boost-emscripten-noshm.patch.0 b/external/boost/boost-emscripten-noshm.patch.0 new file mode 100644 index 000000000000..f9d27b0b6e11 --- /dev/null +++ b/external/boost/boost-emscripten-noshm.patch.0 @@ -0,0 +1,11 @@ +--- boost/interprocess/detail/workaround.hpp.orig 2020-12-15 06:31:51.037665526 +0100 ++++ boost/interprocess/detail/workaround.hpp 2020-12-15 06:32:39.741281893 +0100 +@@ -31,7 +31,7 @@ + ////////////////////////////////////////////////////// + //Check for XSI shared memory objects. They are available in nearly all UNIX platforms + ////////////////////////////////////////////////////// +- #if !defined(__QNXNTO__) && !defined(__ANDROID__) && !defined(__HAIKU__) && !(__VXWORKS__) ++ #if !defined(__QNXNTO__) && !defined(__ANDROID__) && !defined(__HAIKU__) && !(__VXWORKS__) && !defined(__EMSCRIPTEN__) + #define BOOST_INTERPROCESS_XSI_SHARED_MEMORY_OBJECTS + #endif + diff --git a/external/breakpad/ExternalProject_breakpad.mk b/external/breakpad/ExternalProject_breakpad.mk index 9e7e72485849..56a7be987837 100644 --- a/external/breakpad/ExternalProject_breakpad.mk +++ b/external/breakpad/ExternalProject_breakpad.mk @@ -21,7 +21,7 @@ else # !ifeq($(COM),MSC) $(call gb_ExternalProject_get_state_target,breakpad,build) : $(call gb_Trace_StartRange,breakpad,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure CXXFLAGS="-O2 $(gb_VISIBILITY_FLAGS)" \ + $(gb_RUN_CONFIGURE) ./configure CXXFLAGS="-O2 $(gb_VISIBILITY_FLAGS)" \ && $(MAKE) \ ) $(call gb_Trace_EndRange,breakpad,EXTERNAL) diff --git a/external/cairo/ExternalProject_cairo.mk b/external/cairo/ExternalProject_cairo.mk index 41e7621c789f..471ae6104361 100644 --- a/external/cairo/ExternalProject_cairo.mk +++ b/external/cairo/ExternalProject_cairo.mk @@ -64,14 +64,15 @@ else $(call gb_ExternalProject_get_state_target,cairo,build) : $(call gb_Trace_StartRange,cairo,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(debug),STRIP=" ") \ $(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) $(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \ - $(if $(filter-out ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) $(ZLIB_CFLAGS)" ) \ + $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS=" $(ZLIB_CFLAGS)" --enable-pthread=yes PTHREAD_LIBS="") \ + $(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) $(ZLIB_CFLAGS)" ) \ $(if $(filter ANDROID iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) \ LIBS="$(ZLIB_LIBS)" \ $(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) -fuse-ld=bfd") \ - pixman_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,pixman)/pixman" \ + pixman_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,pixman)/pixman -pthread" \ pixman_LIBS="-L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \ $(if $(filter LINUX,$(OS)),-Wl$(COMMA)-z$(COMMA)origin \ -Wl$(COMMA)-rpath$(COMMA)\\\$$\$$ORIGIN) \ @@ -84,7 +85,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) : $(if $(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,fontconfig)") \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,$(if $(filter ANDROID,$(OS)),--disable-shared,--disable-static)) \ - $(if $(filter ANDROID iOS,$(OS)),--disable-xlib --disable-xcb,$(if $(filter TRUE,$(DISABLE_GUI)),--disable-xlib --disable-xcb,--enable-xlib --enable-xcb)) \ + $(if $(filter EMSCRIPTEN ANDROID iOS,$(OS)),--disable-xlib --disable-xcb,$(if $(filter TRUE,$(DISABLE_GUI)),--disable-xlib --disable-xcb,--enable-xlib --enable-xcb)) \ $(if $(filter iOS,$(OS)),--enable-quartz --enable-quartz-font) \ --disable-valgrind \ $(if $(filter iOS,$(OS)),--disable-ft,--enable-ft --enable-fc) \ diff --git a/external/cairo/ExternalProject_pixman.mk b/external/cairo/ExternalProject_pixman.mk index fec943762df8..03dffbd01312 100644 --- a/external/cairo/ExternalProject_pixman.mk +++ b/external/cairo/ExternalProject_pixman.mk @@ -34,11 +34,12 @@ else $(call gb_ExternalProject_get_state_target,pixman,build) : $(call gb_Trace_StartRange,pixman,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,$(if $(filter ANDROID,$(OS)),--disable-shared,--disable-static)) \ $(if $(filter ANDROID,$(OS)),--disable-arm-simd --disable-arm-neon --disable-arm-iwmmxt) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \ + $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-pthread") \ && $(MAKE) \ ) $(call gb_Trace_EndRange,pixman,EXTERNAL) diff --git a/external/coinmp/ExternalProject_coinmp.mk b/external/coinmp/ExternalProject_coinmp.mk index e1484e656619..9bd5a4cd2685 100644 --- a/external/coinmp/ExternalProject_coinmp.mk +++ b/external/coinmp/ExternalProject_coinmp.mk @@ -29,7 +29,7 @@ else $(call gb_ExternalProject_get_state_target,coinmp,build) : $(call gb_Trace_StartRange,coinmp,EXTERNAL) +$(call gb_ExternalProject_run,build,\ - ./configure COIN_SKIP_PROJECTS="Data/Sample" \ + $(gb_RUN_CONFIGURE) ./configure COIN_SKIP_PROJECTS="Data/Sample" \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ $(if $(DISABLE_DYNLOADING),--disable-shared) \ diff --git a/external/cppunit/ExternalProject_cppunit.mk b/external/cppunit/ExternalProject_cppunit.mk index 1c5ac725af59..92db8a1953f3 100644 --- a/external/cppunit/ExternalProject_cppunit.mk +++ b/external/cppunit/ExternalProject_cppunit.mk @@ -43,7 +43,7 @@ endif $(call gb_ExternalProject_get_state_target,cppunit,build) : $(call gb_Trace_StartRange,cppunit,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --disable-dependency-tracking \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \ --disable-doxygen \ @@ -55,7 +55,8 @@ $(call gb_ExternalProject_get_state_target,cppunit,build) : $(if $(filter WNT,$(OS)),LDFLAGS="-Wl$(COMMA)--enable-runtime-pseudo-reloc-v2") \ $(if $(filter SOLARIS,$(OS)),LIBS="-lm") \ $(if $(filter ANDROID,$(OS)),LIBS="$(gb_STDLIBS)") \ - CXXFLAGS="$(cppunit_CXXFLAGS)" \ + $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ + CXXFLAGS="$(cppunit_CXXFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS)" \ && cd src \ && $(MAKE) \ ) diff --git a/external/cppunit/disable-dynloading.patch b/external/cppunit/disable-dynloading.patch index a9aa37f6f45d..62ed1deeb635 100644 --- a/external/cppunit/disable-dynloading.patch +++ b/external/cppunit/disable-dynloading.patch @@ -17,7 +17,7 @@ +// Actually this is for iOS and Android where we build the cppunit tests libraries +// as plain archives and just link them statically into test fixture programs, +// and don't want any stinking duplicate main(), but shouldn't hurt for MacOSX either. -+#elif defined(__APPLE__) || defined(__ANDROID__) ++#elif defined(__APPLE__) || defined(__ANDROID__) || defined(__EMSCRIPTEN__) +#define CPPUNIT_PLUGIN_IMPLEMENT_MAIN() \ + typedef char __CppUnitPlugInImplementMainDummyTypeDef // Unix diff --git a/external/curl/ExternalProject_curl.mk b/external/curl/ExternalProject_curl.mk index 138b50afd0e0..11d1fcc57d4a 100644 --- a/external/curl/ExternalProject_curl.mk +++ b/external/curl/ExternalProject_curl.mk @@ -40,7 +40,7 @@ endif $(call gb_ExternalProject_get_state_target,curl,build): $(call gb_Trace_StartRange,curl,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(filter iOS MACOSX,$(OS)),\ --with-darwinssl,\ $(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"),--without-nss)) \ diff --git a/external/epm/ExternalProject_epm.mk b/external/epm/ExternalProject_epm.mk index 68a61a78a744..7b0dde219e4b 100644 --- a/external/epm/ExternalProject_epm.mk +++ b/external/epm/ExternalProject_epm.mk @@ -16,7 +16,7 @@ $(eval $(call gb_ExternalProject_register_targets,epm,\ $(call gb_ExternalProject_get_state_target,epm,build) : $(call gb_Trace_StartRange,epm,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --disable-fltk \ + $(gb_RUN_CONFIGURE) ./configure --disable-fltk \ $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________NONE) \ && $(MAKE) \ && touch $@ \ diff --git a/external/expat/ExternalProject_expat.mk b/external/expat/ExternalProject_expat.mk index 4f4f0301c1bc..b69e6544f55f 100644 --- a/external/expat/ExternalProject_expat.mk +++ b/external/expat/ExternalProject_expat.mk @@ -16,7 +16,7 @@ $(eval $(call gb_ExternalProject_register_targets,expat,\ $(call gb_ExternalProject_get_state_target,expat,configure) : $(call gb_Trace_StartRange,expat,EXTERNAL) $(call gb_ExternalProject_run,configure,\ - ./configure --without-docbook \ + $(gb_RUN_CONFIGURE) ./configure --without-docbook \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \ ,,expat_configure.log) diff --git a/external/firebird/ExternalProject_firebird.mk b/external/firebird/ExternalProject_firebird.mk index 2a491d965699..94a62e418124 100644 --- a/external/firebird/ExternalProject_firebird.mk +++ b/external/firebird/ExternalProject_firebird.mk @@ -66,7 +66,7 @@ $(call gb_ExternalProject_get_state_target,firebird,build): " \ && export LIBREOFFICE_ICU_LIB="$(call gb_UnpackedTarball_get_dir,icu)/source/lib" \ && export MSVC_USE_INDIVIDUAL_PDBS=TRUE \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --without-editline \ --with-wire-compress=no \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ diff --git a/external/fontconfig/ExternalProject_fontconfig.mk b/external/fontconfig/ExternalProject_fontconfig.mk index b82c7657395b..fdcb80a38363 100644 --- a/external/fontconfig/ExternalProject_fontconfig.mk +++ b/external/fontconfig/ExternalProject_fontconfig.mk @@ -21,14 +21,15 @@ $(eval $(call gb_ExternalProject_register_targets,fontconfig,\ $(call gb_ExternalProject_get_state_target,fontconfig,build) : $(call gb_Trace_StartRange,fontconfig,EXTERNAL) $(call gb_ExternalProject_run,build,\ - CFLAGS="$(if $(debug),-g) $(gb_VISIBILITY_FLAGS)" $(if $(filter ANDROID,$(OS)),LIBS="-lm") \ - ./configure \ + CFLAGS="$(if $(debug),-g) $(gb_VISIBILITY_FLAGS) $(if $(filter EMSCRIPTEN,$(OS)),-pthread)" $(if $(filter ANDROID,$(OS)),LIBS="-lm") \ + $(gb_RUN_CONFIGURE) ./configure \ --disable-shared \ --disable-silent-rules \ $(if $(filter ANDROID,$(OS)),--with-arch=arm) \ --with-expat-includes=$(call gb_UnpackedTarball_get_dir,expat)/lib \ --with-expat-lib=$(gb_StaticLibrary_WORKDIR) \ --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ + $(if $(filter EMSCRIPTEN,$(OS)),ac_cv_func_fstatfs=no ac_cv_func_fstatvfs=no) \ && $(MAKE) -C src \ ) $(call gb_Trace_EndRange,fontconfig,EXTERNAL) diff --git a/external/freetype/ExternalProject_freetype.mk b/external/freetype/ExternalProject_freetype.mk index 3f4a719d5663..8b49abbab13a 100644 --- a/external/freetype/ExternalProject_freetype.mk +++ b/external/freetype/ExternalProject_freetype.mk @@ -25,7 +25,7 @@ else $(call gb_ExternalProject_get_state_target,freetype,build) : $(call gb_Trace_StartRange,freetype,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --disable-shared \ --without-zlib \ --without-bzip2 \ diff --git a/external/gpgmepp/ExternalProject_gpgmepp.mk b/external/gpgmepp/ExternalProject_gpgmepp.mk index 1ba51cfb3bce..92348e426c80 100644 --- a/external/gpgmepp/ExternalProject_gpgmepp.mk +++ b/external/gpgmepp/ExternalProject_gpgmepp.mk @@ -26,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,gpgmepp,build): $(call gb_Executable_ $(call gb_ExternalProject_run,build, \ $(gb_WIN_GPG_cross_setup_exports) \ && autoreconf \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --disable-shared \ --disable-languages \ --disable-gpgconf-test \ @@ -48,7 +48,7 @@ $(call gb_ExternalProject_get_state_target,gpgmepp,build): $(call gb_Trace_StartRange,gpgmepp,EXTERNAL) $(call gb_ExternalProject_run,build,\ autoreconf \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --disable-gpgconf-test \ --disable-gpg-test \ --disable-gpgsm-test \ diff --git a/external/harfbuzz/ExternalProject_harfbuzz.mk b/external/harfbuzz/ExternalProject_harfbuzz.mk index 7219d402df3c..caf6bcd5f922 100644 --- a/external/harfbuzz/ExternalProject_harfbuzz.mk +++ b/external/harfbuzz/ExternalProject_harfbuzz.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,harfbuzz,build) : $(if $(SYSTEM_ICU),,ICU_CONFIG=$(SRCDIR)/external/icu/cross-bin/icu-config) \ GRAPHITE2_CFLAGS="$(GRAPHITE_CFLAGS)" \ GRAPHITE2_LIBS="$(GRAPHITE_LIBS)" \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --enable-static \ --disable-shared \ --disable-gtk-doc \ diff --git a/external/hunspell/ExternalProject_hunspell.mk b/external/hunspell/ExternalProject_hunspell.mk index 43da1c254e34..91fd5c431ef8 100644 --- a/external/hunspell/ExternalProject_hunspell.mk +++ b/external/hunspell/ExternalProject_hunspell.mk @@ -24,11 +24,11 @@ endif $(call gb_ExternalProject_get_state_target,hunspell,build): $(call gb_Trace_StartRange,hunspell,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --disable-shared --disable-nls --with-pic \ + $(gb_RUN_CONFIGURE) ./configure --disable-shared --disable-nls --with-pic \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\ $(if $(filter AIX,$(OS)),CFLAGS="-D_LINUX_SOURCE_COMPAT") \ $(if $(hunspell_CPPFLAGS),CPPFLAGS='$(hunspell_CPPFLAGS)') \ - CXXFLAGS="$(CXXFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(if $(debug),$(gb_DEBUGINFO_FLAGS))" \ + CXXFLAGS="$(CXXFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(if $(debug),$(gb_DEBUGINFO_FLAGS))" \ && cd src/hunspell && $(MAKE) \ ) $(call gb_Trace_EndRange,hunspell,EXTERNAL) diff --git a/external/hyphen/ExternalProject_hyphen.mk b/external/hyphen/ExternalProject_hyphen.mk index 21cef66d85d0..63d167f7804b 100644 --- a/external/hyphen/ExternalProject_hyphen.mk +++ b/external/hyphen/ExternalProject_hyphen.mk @@ -18,7 +18,7 @@ $(eval $(call gb_ExternalProject_register_targets,hyphen,\ $(call gb_ExternalProject_get_state_target,hyphen,build): $(call gb_Trace_StartRange,hyphen,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --disable-shared \ + $(gb_RUN_CONFIGURE) ./configure --disable-shared \ $(if $(filter-out iOS,$(OS)),--with-pic) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) gio_can_sniff=no) \ && $(MAKE) \ diff --git a/external/icu/ExternalProject_icu.mk b/external/icu/ExternalProject_icu.mk index 4ff8370ebd50..18a8f3838834 100644 --- a/external/icu/ExternalProject_icu.mk +++ b/external/icu/ExternalProject_icu.mk @@ -25,7 +25,7 @@ $(call gb_ExternalProject_get_state_target,icu,build) : gb_ICU_XFLAGS="-FS $(SOLARINC) $(gb_DEBUGINFO_FLAGS) $(if $(MSVC_USE_DEBUG_RUNTIME),-MDd,-MD -Gy)" \ && CFLAGS="$${gb_ICU_XFLAGS}" CPPFLAGS="$(SOLARINC)" CXXFLAGS="$${gb_ICU_XFLAGS}" \ INSTALL=`cygpath -m /usr/bin/install` $(if $(MSVC_USE_DEBUG_RUNTIME),LDFLAGS="-DEBUG") \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(MSVC_USE_DEBUG_RUNTIME),--enable-debug --disable-release) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ --with-cross-build=$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source \ @@ -70,11 +70,10 @@ $(call gb_ExternalProject_get_state_target,icu,build) : CPPFLAGS=$(icu_CPPFLAGS) CFLAGS=$(icu_CFLAGS) \ CXXFLAGS=$(icu_CXXFLAGS) LDFLAGS=$(icu_LDFLAGS) \ PYTHONWARNINGS="default" \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --disable-layout --disable-samples \ $(if $(filter FUZZERS,$(BUILD_TYPE)),--disable-release) \ - $(if $(filter iOS ANDROID,$(OS)),--disable-dyload) \ - $(if $(filter ANDROID,$(OS)),--disable-strict ac_cv_c_bigendian=no) \ + $(if $(filter EMSCRIPTEN ANDROID,$(OS)),--disable-strict ac_cv_c_bigendian=no) \ $(if $(filter SOLARIS AIX,$(OS)),--disable-64bit-libs) \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),\ --with-data-packaging=static --enable-static --disable-shared --disable-dyload,\ @@ -82,6 +81,7 @@ $(call gb_ExternalProject_get_state_target,icu,build) : $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)\ --with-cross-build=$(WORKDIR_FOR_BUILD)/UnpackedTarball/icu/source \ --disable-tools --disable-extras) \ + AR="$(AR)" RANLIB="$(RANLIB)" \ && $(MAKE) $(if $(CROSS_COMPILING),DATASUBDIR=data) $(if $(verbose),VERBOSE=1) \ $(if $(filter MACOSX,$(OS)), \ && $(PERL) $(SRCDIR)/solenv/bin/macosx-change-install-names.pl shl \ diff --git a/external/icu/UnpackedTarball_icu.mk b/external/icu/UnpackedTarball_icu.mk index 435382fa7988..a59d6e8b97d7 100644 --- a/external/icu/UnpackedTarball_icu.mk +++ b/external/icu/UnpackedTarball_icu.mk @@ -41,6 +41,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,icu,\ external/icu/icu4c-windows-cygwin-cross.patch.1 \ external/icu/icu4c-$(if $(filter ANDROID,$(OS)),android,rpath).patch.1 \ $(if $(filter-out ANDROID,$(OS)),external/icu/icu4c-icudata-stdlibs.patch.1) \ + external/icu/icu4c-emscripten-cross.patch.1 \ )) $(eval $(call gb_UnpackedTarball_add_file,icu,source/data/brkitr/khmerdict.dict,external/icu/khmerdict.dict)) diff --git a/external/icu/icu4c-emscripten-cross.patch.1 b/external/icu/icu4c-emscripten-cross.patch.1 new file mode 100644 index 000000000000..84c88a68a87d --- /dev/null +++ b/external/icu/icu4c-emscripten-cross.patch.1 @@ -0,0 +1,99 @@ +--- icu/source/acinclude.m4.orig 2020-04-22 22:04:20.000000000 +0200 ++++ icu/source/acinclude.m4 2020-11-04 06:10:29.993070072 +0100 +@@ -84,6 +84,7 @@ + *-dec-osf*) icu_cv_host_frag=mh-alpha-osf ;; + *-*-nto*) icu_cv_host_frag=mh-qnx ;; + *-ncr-*) icu_cv_host_frag=mh-mpras ;; ++wasm*-*-emscripten*) icu_cv_host_frag=mh-emscripten ;; + *) icu_cv_host_frag=mh-unknown ;; + esac + ] +--- /dev/null ++++ icu/source/config/mh-emscripten 2015-10-06 12:01:00.497972406 +0200 +@@ -0,0 +1,86 @@ ++## Emscripten-specific setup ++## Copyright (c) 1999-2013, International Business Machines Corporation and ++## others. All Rights Reserved. ++## Commands to generate dependency files ++GEN_DEPS.c= $(CC) -E -MM $(DEFS) $(CPPFLAGS) ++GEN_DEPS.cc= $(CXX) -E -MM $(DEFS) $(CPPFLAGS) $(CXXFLAGS) ++ ++## Flags for position independent code ++SHAREDLIBCFLAGS = -fPIC ++SHAREDLIBCXXFLAGS = -fPIC ++SHAREDLIBCPPFLAGS = -DPIC ++ ++## Additional flags when building libraries and with threads ++THREADSCPPFLAGS = -D_REENTRANT ++LIBCPPFLAGS = ++ ++## Compiler switch to embed a runtime search path ++LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN ++LD_RPATH_PRE = -Wl,-rpath, ++ ++## Force RPATH=$ORIGIN to locate own dependencies w/o need for LD_LIBRARY_PATH: ++ENABLE_RPATH=YES ++RPATHLDFLAGS=${LD_RPATH_PRE}'$$ORIGIN' ++ ++## These are the library specific LDFLAGS ++#LDFLAGSICUDT=-nodefaultlibs -nostdlib ++# Debian change: linking icudata as data only causes too many problems. ++LDFLAGSICUDT= ++ ++## Compiler switch to embed a library name ++# The initial tab in the next line is to prevent icu-config from reading it. ++ LD_SONAME = -Wl,-soname -Wl,$(notdir $(MIDDLE_SO_TARGET)) ++#SH# # We can't depend on MIDDLE_SO_TARGET being set. ++#SH# LD_SONAME= ++ ++## Shared library options ++LD_SOOPTIONS= -Wl,-Bsymbolic-functions ++ ++## Shared object suffix ++SO = so ++## Non-shared intermediate object suffix ++STATIC_O = o ++ ++## Compilation rules ++# WASM needs -pthread for atomics support ++%.$(STATIC_O): $(srcdir)/%.c ++ $(call SILENT_COMPILE,$(strip $(COMPILE.c) $(STATICCPPFLAGS) $(STATICCFLAGS)) -pthread -o $@ $<) ++ ++%.$(STATIC_O): $(srcdir)/%.cpp ++ $(call SILENT_COMPILE,$(strip $(COMPILE.cc) $(STATICCPPFLAGS) $(STATICCXXFLAGS)) -pthread -o $@ $<) ++ ++ ++## Dependency rules ++%.d: $(srcdir)/%.c ++ $(call ICU_MSG,(deps)) $< ++ @$(SHELL) -ec '$(GEN_DEPS.c) $< \ ++ | sed '\''s%\($*\)\.o[ :]*%\1.o $@ : %g'\'' > $@; \ ++ [ -s $@ ] || rm -f $@' ++ ++%.d: $(srcdir)/%.cpp ++ $(call ICU_MSG,(deps)) $< ++ @$(SHELL) -ec '$(GEN_DEPS.cc) $< \ ++ | sed '\''s%\($*\)\.o[ :]*%\1.o $@ : %g'\'' > $@; \ ++ [ -s $@ ] || rm -f $@' ++ ++## Versioned libraries rules ++ ++%.$(SO).$(SO_TARGET_VERSION_MAJOR): %.$(SO).$(SO_TARGET_VERSION) ++ $(RM) $@ && ln -s ${<F} $@ ++%.$(SO): %.$(SO).$(SO_TARGET_VERSION_MAJOR) ++ $(RM) $@ && ln -s ${*F}.$(SO).$(SO_TARGET_VERSION) $@ ++ ++## Bind internal references ++ ++# LDflags that pkgdata will use ++BIR_LDFLAGS= -Wl,-Bsymbolic ++ ++# Dependencies [i.e. map files] for the final library ++BIR_DEPS= ++ ++## Remove shared library 's' ++STATIC_PREFIX_WHEN_USED = ++STATIC_PREFIX = ++ ++## without assembly ++PKGDATA_OPTS = -O $(top_builddir)/data/icupkg.inc -w diff --git a/external/lcms2/ExternalProject_lcms2.mk b/external/lcms2/ExternalProject_lcms2.mk index 4bed4a5b705d..35dce1bcc03e 100644 --- a/external/lcms2/ExternalProject_lcms2.mk +++ b/external/lcms2/ExternalProject_lcms2.mk @@ -27,7 +27,7 @@ else $(call gb_ExternalProject_get_state_target,lcms2,build): $(call gb_Trace_StartRange,lcms2,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --without-jpeg --without-tiff --with-pic \ + $(gb_RUN_CONFIGURE) ./configure --without-jpeg --without-tiff --with-pic \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \ CPPFLAGS=" $(SOLARINC)" \ diff --git a/external/libabw/ExternalProject_libabw.mk b/external/libabw/ExternalProject_libabw.mk index 50e66fdb76ca..a21835062b90 100644 --- a/external/libabw/ExternalProject_libabw.mk +++ b/external/libabw/ExternalProject_libabw.mk @@ -26,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,libabw,build) : $(call gb_Trace_StartRange,libabw,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libassuan/ExternalProject_libassuan.mk b/external/libassuan/ExternalProject_libassuan.mk index e4e24aeac7fd..8ee96826cd69 100644 --- a/external/libassuan/ExternalProject_libassuan.mk +++ b/external/libassuan/ExternalProject_libassuan.mk @@ -26,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,libassuan,build): $(call gb_Executabl $(call gb_ExternalProject_run,build,\ $(gb_WIN_GPG_cross_setup_exports) \ && autoreconf \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --enable-static \ --disable-shared \ --disable-doc \ @@ -44,7 +44,7 @@ $(call gb_ExternalProject_get_state_target,libassuan,build): $(call gb_Trace_StartRange,libassuan,EXTERNAL) $(call gb_ExternalProject_run,build,\ autoreconf \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --disable-doc \ GPG_ERROR_CFLAGS="$(GPG_ERROR_CFLAGS)" \ GPG_ERROR_LIBS="$(GPG_ERROR_LIBS)" \ diff --git a/external/libatomic_ops/ExternalProject_libatomic_ops.mk b/external/libatomic_ops/ExternalProject_libatomic_ops.mk index 20cefa39b4fe..47f2da68c005 100644 --- a/external/libatomic_ops/ExternalProject_libatomic_ops.mk +++ b/external/libatomic_ops/ExternalProject_libatomic_ops.mk @@ -19,7 +19,7 @@ $(call gb_ExternalProject_get_state_target,libatomic_ops,build) : $(call gb_Trace_StartRange,libatomic_ops,EXTERNAL) $(call gb_ExternalProject_run,build,\ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),CFLAGS="$(CFLAGS) $(gb_VISIBILITY_FLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS))" CXXFLAGS="$(CXXFLAGS) $(gb_VISIBILITY_FLAGS) $(gb_VISIBILITY_FLAGS_CXX) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS))") \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ && $(MAKE) \ ) diff --git a/external/libcdr/ExternalProject_libcdr.mk b/external/libcdr/ExternalProject_libcdr.mk index b3e78f469cbf..48a21afd24a4 100644 --- a/external/libcdr/ExternalProject_libcdr.mk +++ b/external/libcdr/ExternalProject_libcdr.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,libcdr,build) : $(call gb_Trace_StartRange,libcdr,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libebook/ExternalProject_libebook.mk b/external/libebook/ExternalProject_libebook.mk index 8ee2c7293e11..15c9689b3cbd 100644 --- a/external/libebook/ExternalProject_libebook.mk +++ b/external/libebook/ExternalProject_libebook.mk @@ -28,7 +28,7 @@ $(call gb_ExternalProject_get_state_target,libebook,build) : $(call gb_Trace_StartRange,libebook,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libeot/ExternalProject_libeot.mk b/external/libeot/ExternalProject_libeot.mk index 75e8054a0a4c..98c7d2eb403d 100644 --- a/external/libeot/ExternalProject_libeot.mk +++ b/external/libeot/ExternalProject_libeot.mk @@ -18,7 +18,7 @@ $(call gb_ExternalProject_get_state_target,libeot,build) : $(call gb_ExternalProject_run,build,\ touch Makefile.in \ && export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libepubgen/ExternalProject_libepubgen.mk b/external/libepubgen/ExternalProject_libepubgen.mk index 54a9a3d68bdc..096f0f6e534b 100644 --- a/external/libepubgen/ExternalProject_libepubgen.mk +++ b/external/libepubgen/ExternalProject_libepubgen.mk @@ -24,7 +24,7 @@ $(call gb_ExternalProject_get_state_target,libepubgen,build) : $(call gb_Trace_StartRange,libepubgen,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libetonyek/ExternalProject_libetonyek.mk b/external/libetonyek/ExternalProject_libetonyek.mk index 0eabfe5f4ffb..14773214be48 100644 --- a/external/libetonyek/ExternalProject_libetonyek.mk +++ b/external/libetonyek/ExternalProject_libetonyek.mk @@ -29,7 +29,7 @@ $(call gb_ExternalProject_get_state_target,libetonyek,build) : $(call gb_Trace_StartRange,libetonyek,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/libexttextcat/ExternalProject_libexttextcat.mk b/external/libexttextcat/ExternalProject_libexttextcat.mk index 1d729a103b33..e73948e68fb2 100644 --- a/external/libexttextcat/ExternalProject_libexttextcat.mk +++ b/external/libexttextcat/ExternalProject_libexttextcat.mk @@ -16,7 +16,7 @@ $(eval $(call gb_ExternalProject_register_targets,libexttextcat,\ $(call gb_ExternalProject_get_state_target,libexttextcat,build): $(call gb_Trace_StartRange,libexttextcat,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --disable-shared --with-pic \ + $(gb_RUN_CONFIGURE) ./configure --disable-shared --with-pic \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ $(if $(ENABLE_WERROR),--enable-werror,--disable-werror) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ diff --git a/external/libffi/ExternalProject_libffi.mk b/external/libffi/ExternalProject_libffi.mk index b9e4254d9b2c..a495db9af11c 100644 --- a/external/libffi/ExternalProject_libffi.mk +++ b/external/libffi/ExternalProject_libffi.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,libffi,build): $(call gb_Trace_StartRange,libffi,EXTERNAL) $(call gb_ExternalProject_run,build,\ export LIB="$(ILIB)" && \ - MAKE=$(MAKE) ./configure \ + MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --enable-option-checking=fatal \ --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ $(if $(filter LINUX,$(OS)), \ diff --git a/external/libfreehand/ExternalProject_libfreehand.mk b/external/libfreehand/ExternalProject_libfreehand.mk index be3a478485aa..09f8187a08a3 100644 --- a/external/libfreehand/ExternalProject_libfreehand.mk +++ b/external/libfreehand/ExternalProject_libfreehand.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,libfreehand,build) : $(call gb_Trace_StartRange,libfreehand,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libgpg-error/ExternalProject_libgpg-error.mk b/external/libgpg-error/ExternalProject_libgpg-error.mk index 736079c77aec..0bcd9d5f7bbc 100644 --- a/external/libgpg-error/ExternalProject_libgpg-error.mk +++ b/external/libgpg-error/ExternalProject_libgpg-error.mk @@ -20,7 +20,7 @@ $(call gb_ExternalProject_get_state_target,libgpg-error,build): $(call gb_Execut $(call gb_Trace_StartRange,libgpg-error,EXTERNAL) $(call gb_ExternalProject_run,build,\ $(gb_WIN_GPG_cross_setup_exports) \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --enable-static \ --disable-shared \ --disable-rpath \ @@ -35,7 +35,7 @@ else $(call gb_ExternalProject_get_state_target,libgpg-error,build): $(call gb_Trace_StartRange,libgpg-error,EXTERNAL) $(call gb_ExternalProject_run,build,\ - MAKE=$(MAKE) ./configure \ + MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --disable-rpath \ --disable-languages \ --disable-doc \ diff --git a/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk b/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk index a5cd4c57ddc7..c5e0556748b4 100644 --- a/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk +++ b/external/libjpeg-turbo/ExternalProject_libjpeg-turbo.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,libjpeg-turbo,build) : $(call gb_Exte $(call gb_ExternalProject_get_state_target,libjpeg-turbo,configure) : $(call gb_Trace_StartRange,libjpeg-turbo,EXTERNAL) $(call gb_ExternalProject_run,configure,\ - MAKE=$(MAKE) ./configure \ + MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --build=$(BUILD_PLATFORM) \ --host=$(HOST_PLATFORM) \ --with-pic \ diff --git a/external/liblangtag/ExternalProject_liblangtag.mk b/external/liblangtag/ExternalProject_liblangtag.mk index 51dc4f4b0c68..7c52820286cb 100644 --- a/external/liblangtag/ExternalProject_liblangtag.mk +++ b/external/liblangtag/ExternalProject_liblangtag.mk @@ -23,13 +23,13 @@ $(eval $(call gb_ExternalProject_register_targets,liblangtag,\ $(call gb_ExternalProject_get_state_target,liblangtag,build): $(call gb_Trace_StartRange,liblangtrag,EXTERNAL) $(call gb_ExternalProject_run,build,\ - MAKE=$(MAKE) ./configure --disable-modules --disable-test --disable-introspection --with-pic \ + MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure --disable-modules --disable-test --disable-introspection --with-pic \ $(if $(or $(DISABLE_DYNLOADING),$(filter MSC,$(COM))), \ --disable-shared --enable-static, \ --enable-shared --disable-static) \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ $(if $(filter TRUE,$(HAVE_GCC_BUILTIN_ATOMIC)),"lt_cv_has_atomic=yes","lt_cv_has_atomic=no") \ - CFLAGS='$(CFLAGS) \ + CFLAGS='$(CFLAGS) -pthread \ $(if $(ENABLE_OPTIMIZED), \ $(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) \ $(if $(call gb_Module__symbols_enabled,liblangtag),$(gb_DEBUGINFO_FLAGS))' \ diff --git a/external/libmspub/ExternalProject_libmspub.mk b/external/libmspub/ExternalProject_libmspub.mk index 21121f091279..82bc4132f23b 100644 --- a/external/libmspub/ExternalProject_libmspub.mk +++ b/external/libmspub/ExternalProject_libmspub.mk @@ -26,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,libmspub,build) : $(call gb_Trace_StartRange,libmspub,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libmwaw/ExternalProject_libmwaw.mk b/external/libmwaw/ExternalProject_libmwaw.mk index 067de69002bd..0fc2cc4e3958 100644 --- a/external/libmwaw/ExternalProject_libmwaw.mk +++ b/external/libmwaw/ExternalProject_libmwaw.mk @@ -23,7 +23,7 @@ $(call gb_ExternalProject_get_state_target,libmwaw,build) : $(call gb_Trace_StartRange,libmwaw,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/libnumbertext/ExternalProject_libnumbertext.mk b/external/libnumbertext/ExternalProject_libnumbertext.mk index f4dbe5f655c3..3094351aebf2 100644 --- a/external/libnumbertext/ExternalProject_libnumbertext.mk +++ b/external/libnumbertext/ExternalProject_libnumbertext.mk @@ -28,7 +28,7 @@ $(call gb_ExternalProject_get_state_target,libnumbertext,build): $(call gb_Trace_StartRange,libnumbertext,EXTERNAL) $(call gb_ExternalProject_run,build,\ LIBS="$(gb_STDLIBS) $(LIBS)" \ - $(SHELL) ./configure --disable-shared --with-pic \ + $(SHELL) $(gb_RUN_CONFIGURE) ./configure --disable-shared --with-pic \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ $(if $(ENABLE_WERROR),--enable-werror,--disable-werror) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM))\ diff --git a/external/libodfgen/ExternalProject_libodfgen.mk b/external/libodfgen/ExternalProject_libodfgen.mk index a32e3786e7f6..658e43873e3e 100644 --- a/external/libodfgen/ExternalProject_libodfgen.mk +++ b/external/libodfgen/ExternalProject_libodfgen.mk @@ -24,7 +24,7 @@ $(call gb_ExternalProject_get_state_target,libodfgen,build) : $(call gb_Trace_StartRange,libodfgen,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/liborcus/ExternalProject_liborcus.mk b/external/liborcus/ExternalProject_liborcus.mk index c2a8cdcbe4a3..c7dd76ebfee5 100644 --- a/external/liborcus/ExternalProject_liborcus.mk +++ b/external/liborcus/ExternalProject_liborcus.mk @@ -95,11 +95,11 @@ $(call gb_ExternalProject_get_state_target,liborcus,build) : $(call gb_ExternalProject_run,build,\ $(if $(liborcus_LIBS),LIBS='$(liborcus_LIBS)') \ $(if $(liborcus_CXXFLAGS),CXXFLAGS='$(liborcus_CXXFLAGS)') \ - $(if $(liborcus_CPPFLAGS),CPPFLAGS='$(liborcus_CPPFLAGS)') \ + $(if $(liborcus_CPPFLAGS),CPPFLAGS='$(liborcus_CPPFLAGS) $(gb_EMSCRIPTEN_CPPFLAGS)') \ $(if $(liborcus_LDFLAGS),LDFLAGS='$(liborcus_LDFLAGS)') \ MDDS_CFLAGS='$(MDDS_CFLAGS)' \ MDDS_LIBS=' ' \ - MAKE=$(MAKE) ./configure \ + MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/libpagemaker/ExternalProject_libpagemaker.mk b/external/libpagemaker/ExternalProject_libpagemaker.mk index 34254b872713..ca74086b5a2a 100644 --- a/external/libpagemaker/ExternalProject_libpagemaker.mk +++ b/external/libpagemaker/ExternalProject_libpagemaker.mk @@ -24,7 +24,7 @@ $(call gb_ExternalProject_get_state_target,libpagemaker,build) : $(call gb_Trace_StartRange,libpagemaker,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libqxp/ExternalProject_libqxp.mk b/external/libqxp/ExternalProject_libqxp.mk index f1b63f6bfa38..f428693126aa 100644 --- a/external/libqxp/ExternalProject_libqxp.mk +++ b/external/libqxp/ExternalProject_libqxp.mk @@ -25,7 +25,7 @@ $(call gb_ExternalProject_get_state_target,libqxp,build) : $(call gb_Trace_StartRange,libqxp,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/librevenge/ExternalProject_librevenge.mk b/external/librevenge/ExternalProject_librevenge.mk index 7c3e36761e22..9bc9141b1fc5 100644 --- a/external/librevenge/ExternalProject_librevenge.mk +++ b/external/librevenge/ExternalProject_librevenge.mk @@ -23,7 +23,7 @@ $(call gb_ExternalProject_get_state_target,librevenge,build) : $(call gb_Trace_StartRange,librevenge,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --disable-shared --enable-static, \ diff --git a/external/libstaroffice/ExternalProject_libstaroffice.mk b/external/libstaroffice/ExternalProject_libstaroffice.mk index 8aad471e5d24..3d264a75498a 100644 --- a/external/libstaroffice/ExternalProject_libstaroffice.mk +++ b/external/libstaroffice/ExternalProject_libstaroffice.mk @@ -23,7 +23,7 @@ $(call gb_ExternalProject_get_state_target,libstaroffice,build) : $(call gb_Trace_StartRange,libstaroffice,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/libvisio/ExternalProject_libvisio.mk b/external/libvisio/ExternalProject_libvisio.mk index ea2f09688fff..9a348f8687d4 100644 --- a/external/libvisio/ExternalProject_libvisio.mk +++ b/external/libvisio/ExternalProject_libvisio.mk @@ -26,7 +26,7 @@ $(call gb_ExternalProject_get_state_target,libvisio,build) : $(call gb_Trace_StartRange,libvisio,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/libwpd/ExternalProject_libwpd.mk b/external/libwpd/ExternalProject_libwpd.mk index c3b810c6acd7..bae99dcdfbc2 100644 --- a/external/libwpd/ExternalProject_libwpd.mk +++ b/external/libwpd/ExternalProject_libwpd.mk @@ -24,7 +24,7 @@ $(call gb_ExternalProject_get_state_target,libwpd,build) : $(call gb_Trace_StartRange,libwpd,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --disable-shared --enable-static, \ diff --git a/external/libwpg/ExternalProject_libwpg.mk b/external/libwpg/ExternalProject_libwpg.mk index 01f31c55d771..e6dd423b92c2 100644 --- a/external/libwpg/ExternalProject_libwpg.mk +++ b/external/libwpg/ExternalProject_libwpg.mk @@ -24,7 +24,7 @@ $(call gb_ExternalProject_get_state_target,libwpg,build) : $(call gb_Trace_StartRange,libwpg,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --disable-shared --enable-static, \ diff --git a/external/libwps/ExternalProject_libwps.mk b/external/libwps/ExternalProject_libwps.mk index 0bcfc5ceb72d..12e3c8719a47 100644 --- a/external/libwps/ExternalProject_libwps.mk +++ b/external/libwps/ExternalProject_libwps.mk @@ -46,7 +46,7 @@ $(call gb_ExternalProject_get_state_target,libwps,build) : $(call gb_Trace_StartRange,libwps,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ $(if $(DISABLE_DYNLOADING), \ --enable-static --disable-shared \ diff --git a/external/libxml2/ExternalProject_libxml2.mk b/external/libxml2/ExternalProject_libxml2.mk index 778befade47f..77d040b4b2c5 100644 --- a/external/libxml2/ExternalProject_libxml2.mk +++ b/external/libxml2/ExternalProject_libxml2.mk @@ -13,6 +13,10 @@ $(eval $(call gb_ExternalProject_register_targets,libxml2,\ build \ )) +ifeq ($(OS),EMSCRIPTEN) +$(call gb_ExternalProject_use_external_project,libxml2,icu) +endif + ifeq ($(OS),WNT) $(call gb_ExternalProject_use_external_project,libxml2,icu) @@ -31,7 +35,7 @@ else # OS!=WNT $(call gb_ExternalProject_get_state_target,libxml2,build): $(call gb_Trace_StartRange,libxml2,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --disable-ipv6 --without-python --without-zlib --with-sax1 \ + $(gb_RUN_CONFIGURE) ./configure --disable-ipv6 --without-python --without-zlib --with-sax1 \ --without-lzma \ $(if $(debug),--with-run-debug) \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ diff --git a/external/libxslt/ExternalProject_libxslt.mk b/external/libxslt/ExternalProject_libxslt.mk index 0602c320ea7d..21c53f340714 100644 --- a/external/libxslt/ExternalProject_libxslt.mk +++ b/external/libxslt/ExternalProject_libxslt.mk @@ -32,7 +32,7 @@ else # OS!=WNT $(call gb_ExternalProject_get_state_target,libxslt,build): $(call gb_Trace_StartRange,libxslt,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure --without-crypto --without-python \ + $(gb_RUN_CONFIGURE) ./configure --without-crypto --without-python \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \ LDFLAGS="$(if $(filter LINUX FREEBSD,$(OS)),-Wl$(COMMA)-z$(COMMA)origin -Wl$(COMMA)-rpath$(COMMA)\\"\$$\$$ORIGIN" -Wl$(COMMA)-noinhibit-exec) \ diff --git a/external/libzmf/ExternalProject_libzmf.mk b/external/libzmf/ExternalProject_libzmf.mk index c6593899f2c0..695cb2ee5d34 100644 --- a/external/libzmf/ExternalProject_libzmf.mk +++ b/external/libzmf/ExternalProject_libzmf.mk @@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,libzmf,build) : $(call gb_Trace_StartRange,libzmf,EXTERNAL) $(call gb_ExternalProject_run,build,\ export PKG_CONFIG="" \ - && MAKE=$(MAKE) ./configure \ + && MAKE=$(MAKE) $(gb_RUN_CONFIGURE) ./configure \ --with-pic \ --enable-static \ --disable-shared \ diff --git a/external/mythes/ExternalProject_mythes.mk b/external/mythes/ExternalProject_mythes.mk index b352e9b594d3..298607f0aa73 100644 --- a/external/mythes/ExternalProject_mythes.mk +++ b/external/mythes/ExternalProject_mythes.mk @@ -18,7 +18,7 @@ $(eval $(call gb_ExternalProject_register_targets,mythes,\ $(call gb_ExternalProject_get_state_target,mythes,build): $(call gb_Trace_StartRange,mythes,EXTERNAL) $(call gb_ExternalProject_run,build,\ - LIBS="$(gb_STDLIBS) $(LIBS)" ./configure --disable-shared --with-pic \ + LIBS="$(gb_STDLIBS) $(LIBS)" $(gb_RUN_CONFIGURE) ./configure --disable-shared --with-pic \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) gio_can_sniff=no) \ && $(MAKE) \ ) diff --git a/external/openldap/ExternalProject_openldap.mk b/external/openldap/ExternalProject_openldap.mk index 46e9168f5a91..8a102d0028a9 100644 --- a/external/openldap/ExternalProject_openldap.mk +++ b/external/openldap/ExternalProject_openldap.mk @@ -29,7 +29,7 @@ endif $(call gb_ExternalProject_get_state_target,openldap,build) : $(call gb_Trace_StartRange,openldap,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --disable-slapd \ --with-pic \ --with-tls=moznss \ diff --git a/external/openssl/ExternalProject_openssl.mk b/external/openssl/ExternalProject_openssl.mk index a6082932b8f8..4c5d630721c8 100644 --- a/external/openssl/ExternalProject_openssl.mk +++ b/external/openssl/ExternalProject_openssl.mk @@ -49,6 +49,8 @@ OPENSSL_PLATFORM := \ $(if $(filter MACOSX,$(OS)),\ $(if $(filter X86_64,$(CPUNAME)),darwin64-x86_64-cc)\ $(if $(filter AARCH64,$(CPUNAME)),darwin64-arm64-cc)\ + ,\ + $(if $(filter EMSCRIPTEN,$(OS)),no-engine no-dso no-dgram no-srtp no-err no-ocsp no-psk no-ts no-asm) \ )\ )\ )\ diff --git a/external/postgresql/ExternalProject_postgresql.mk b/external/postgresql/ExternalProject_postgresql.mk index ea822ebe3208..b491301c73b4 100644 --- a/external/postgresql/ExternalProject_postgresql.mk +++ b/external/postgresql/ExternalProject_postgresql.mk @@ -65,7 +65,7 @@ endif $(call gb_ExternalProject_get_state_target,postgresql,build) : $(call gb_Trace_StartRange,postgresql,EXTERNAL) $(call gb_ExternalProject_run,build,\ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ --without-readline \ --without-zlib \ --with-ldap \ diff --git a/external/python3/ExternalProject_python3.mk b/external/python3/ExternalProject_python3.mk index 7ff7040e03bd..8766b1e3e9cb 100644 --- a/external/python3/ExternalProject_python3.mk +++ b/external/python3/ExternalProject_python3.mk @@ -84,7 +84,7 @@ $(call gb_ExternalProject_get_state_target,python3,build) : ac_cv_func_clock_gettime=no \ ) \ ) \ - ./configure \ + $(gb_RUN_CONFIGURE) ./configure \ $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)) \ $(if $(ENABLE_VALGRIND),--with-valgrind) \ $(if $(ENABLE_DBGUTIL),--with-pydebug) \ diff --git a/external/redland/ExternalProject_raptor.mk b/external/redland/ExternalProject_raptor.mk index 4bc91c375b85..ea14077f3029 100644 --- a/external/redland/ExternalProject_raptor.mk +++ b/external/redland/ExternalProject_raptor.mk @@ -25,7 +25,7 @@ $(call gb_ExternalProject_get_state_target,raptor,build): $(if $(filter LINUX FREEBSD,$(OS)),-Wl$(COMMA)-z$(COMMA)origin -Wl$(COMMA)-rpath$(COMMA)\\"\$$\$$ORIGIN") \ $(if $(SYSBASE),$(if $(filter LINUX SOLARIS,$(OS)),-L$(SYSBASE)/lib -L$(SYSBASE)/usr/lib -lpthread -ldl))" \ CPPFLAGS="$(if $(SYSBASE),-I$(SYSBASE)/usr/include)" \ - ./configure --disable-gtk-doc \ + $(gb_RUN_CONFIGURE) ./configure --disable-gtk-doc \ --enable-parsers="rdfxml ntriples turtle trig guess rss-tag-soup" \ --with-www=xml \ --without-xslt-config \ diff --git a/external/redland/ExternalProject_rasqal.mk b/external/redland/ExternalProject_rasqal.mk index 0e765e098eb9..5348e37294a9 100644 --- a/external/redland/ExternalProject_rasqal.mk +++ b/external/redland/ExternalProject_rasqal.mk @@ -30,7 +30,7 @@ $(call gb_ExternalProject_get_state_target,rasqal,build): PKG_CONFIG="" \ RAPTOR2_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,raptor)/src" \ RAPTOR2_LIBS="-L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2" \ - ./configure --disable-gtk-doc \ + $(gb_RUN_CONFIGURE) ./configure --disable-gtk-doc \ --with-regex-library=posix \ --with-decimal=none \ --with-uuid-library=internal \ diff --git a/external/redland/ExternalProject_redland.mk b/external/redland/ExternalProject_redland.mk index f6101f0d288e..f908b550625b 100644 --- a/external/redland/ExternalProject_redland.mk +++ b/external/redland/ExternalProject_redland.mk @@ -33,7 +33,7 @@ $(call gb_ExternalProject_get_state_target,redland,build): RAPTOR2_LIBS="-L$(call gb_UnpackedTarball_get_dir,raptor)/src/.libs -lraptor2 $(LIBXML_LIBS)" \ RASQAL_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,rasqal)/src" \ RASQAL_LIBS="-L$(call gb_UnpackedTarball_get_dir,rasqal)/src/.libs -lrasqal" \ - ./configure --disable-gtk-doc \ + $(gb_RUN_CONFIGURE) ./configure --disable-gtk-doc \ --disable-modular \ --without-threads \ --without-bdb --without-sqlite --without-mysql \ diff --git a/external/xmlsec/ExternalProject_xmlsec.mk b/external/xmlsec/ExternalProject_xmlsec.mk index 3db17c769c8c..4fa4aea834b1 100644 --- a/external/xmlsec/ExternalProject_xmlsec.mk +++ b/external/xmlsec/ExternalProject_xmlsec.mk @@ -41,7 +41,7 @@ $(call gb_ExternalProject_get_state_target,xmlsec,build) : $(if $(filter iOS MACOSX,$(OS_FOR_BUILD)),ACLOCAL="aclocal -I $(SRCDIR)/m4/mac") \ $(if $(filter AIX,$(OS)),ACLOCAL="aclocal -I /opt/freeware/share/aclocal") \ autoreconf \ - && ./configure \ + && $(gb_RUN_CONFIGURE) ./configure \ --with-pic --disable-shared --disable-crypto-dl --without-libxslt --without-gnutls --without-gcrypt --disable-apps --disable-docs \ $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \ CFLAGS="$(CFLAGS) $(if $(ENABLE_OPTIMIZED),$(gb_COMPILEROPTFLAGS),$(gb_COMPILERNOOPTFLAGS)) $(if $(debug),$(gb_DEBUGINFO_FLAGS)) $(gb_VISIBILITY_FLAGS)" \ @@ -52,7 +52,7 @@ $(call gb_ExternalProject_get_state_target,xmlsec,build) : $(if $(filter MACOSX,$(OS_FOR_BUILD)),--disable-pkgconfig) \ NSPR_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,nss)/dist/out/include" NSPR_LIBS="-L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lnspr4" \ NSS_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,nss)/dist/public/nss" NSS_LIBS="-L$(call gb_UnpackedTarball_get_dir,nss)/dist/out/lib -lsmime3 -lnss3 -lnssutil3" \ - ), \ + ), \ $(if $(ENABLE_OPENSSL), \ $(if $(SYSTEM_OPENSSL),, \ OPENSSL_CFLAGS="-I$(call gb_UnpackedTarball_get_dir,openssl)/include" \ |