From b5e278c0eb148ada5a54124a41cb23788b7fdb15 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 14 Sep 2023 19:24:18 +0200 Subject: [PATCH] Link CEF files into webview sample build directory under Unix Ensure that the sample can run using wxWebViewChromium backend out of the box by setting things up so that it can find the CEF files. Note that we use symlinks instead of actually copying these files, to avoid wasting so much disk space (CEF libraries take more than 1GiB). --- autoconf_inc.m4 | 6 ++++++ configure | 6 ++++++ samples/webview/Makefile.in | 7 ++++++- samples/webview/webview.bkl | 15 +++++++++++++++ 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/autoconf_inc.m4 b/autoconf_inc.m4 index f12a7f26ac..6c6ba76c12 100644 --- a/autoconf_inc.m4 +++ b/autoconf_inc.m4 @@ -500,6 +500,12 @@ dnl ### begin block 20_COND_PLATFORM_UNIX_1_USE_PLUGINS_0[wx.bkl] ### COND_PLATFORM_UNIX_1_USE_PLUGINS_0="" fi AC_SUBST(COND_PLATFORM_UNIX_1_USE_PLUGINS_0) +dnl ### begin block 20_COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1[../../samples/webview/webview.bkl] ### + COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1="#" + if test "x$PLATFORM_UNIX" = "x1" -a "x$USE_WEBVIEW_CHROMIUM" = "x1" ; then + COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1="" + fi + AC_SUBST(COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1) dnl ### begin block 20_COND_PLATFORM_WIN32_0[../../demos/bombs/bombs.bkl,../../demos/forty/forty.bkl,../../demos/fractal/fractal.bkl,../../demos/life/life.bkl,../../demos/poem/poem.bkl,../../samples/access/access.bkl,../../samples/animate/anitest.bkl,../../samples/archive/archive.bkl,../../samples/artprov/artprov.bkl,../../samples/aui/auidemo.bkl,../../samples/calendar/calendar.bkl,../../samples/caret/caret.bkl,../../samples/clipboard/clipboard.bkl,../../samples/collpane/collpane.bkl,../../samples/combo/combo.bkl,../../samples/config/config.bkl,../../samples/console/console.bkl,../../samples/dataview/dataview.bkl,../../samples/debugrpt/debugrpt.bkl,../../samples/dialogs/dialogs.bkl,../../samples/dialup/dialup.bkl,../../samples/display/display.bkl,../../samples/dll/dll.bkl,../../samples/dnd/dnd.bkl,../../samples/docview/docview.bkl,../../samples/dragimag/dragimag.bkl,../../samples/drawing/drawing.bkl,../../samples/erase/erase.bkl,../../samples/event/event.bkl,../../samples/except/except.bkl,../../samples/exec/exec.bkl,../../samples/font/font.bkl,../../samples/fswatcher/fswatcher.bkl,../../samples/grid/grid.bkl,../../samples/help/help.bkl,../../samples/htlbox/htlbox.bkl,../../samples/html/about/about.bkl,../../samples/html/help/help.bkl,../../samples/html/helpview/helpview.bkl,../../samples/html/printing/printing.bkl,../../samples/html/test/test.bkl,../../samples/html/virtual/virtual.bkl,../../samples/html/widget/widget.bkl,../../samples/html/zip/zip.bkl,../../samples/image/image.bkl,../../samples/internat/internat.bkl,../../samples/ipc/ipc.bkl,../../samples/joytest/joytest.bkl,../../samples/keyboard/keyboard.bkl,../../samples/layout/layout.bkl,../../samples/listctrl/listctrl.bkl,../../samples/mdi/mdi.bkl,../../samples/mediaplayer/mediaplayer.bkl,../../samples/menu/menu.bkl,../../samples/minimal/minimal.bkl,../../samples/nativdlg/nativdlg.bkl,../../samples/notebook/notebook.bkl,../../samples/oleauto/oleauto.bkl,../../samples/opengl/cube/cube.bkl,../../samples/opengl/isosurf/isosurf.bkl,../../samples/opengl/penguin/penguin.bkl,../../samples/opengl/pyramid/pyramid.bkl,../../samples/ownerdrw/ownerdrw.bkl,../../samples/popup/popup.bkl,../../samples/power/power.bkl,../../samples/preferences/preferences.bkl,../../samples/printing/printing.bkl,../../samples/propgrid/propgrid.bkl,../../samples/regtest/regtest.bkl,../../samples/render/render.bkl,../../samples/ribbon/ribbon.bkl,../../samples/richtext/richtext.bkl,../../samples/sashtest/sashtest.bkl,../../samples/scroll/scroll.bkl,../../samples/secretstore/secretstore.bkl,../../samples/shaped/shaped.bkl,../../samples/sockets/sockets.bkl,../../samples/sound/sound.bkl,../../samples/splash/splash.bkl,../../samples/splitter/splitter.bkl,../../samples/statbar/statbar.bkl,../../samples/stc/stctest.bkl,../../samples/svg/svgtest.bkl,../../samples/taborder/taborder.bkl,../../samples/taskbar/taskbar.bkl,../../samples/taskbarbutton/taskbarbutton.bkl,../../samples/text/text.bkl,../../samples/thread/thread.bkl,../../samples/toolbar/toolbar.bkl,../../samples/treectrl/treectrl.bkl,../../samples/treelist/treelist.bkl,../../samples/typetest/typetest.bkl,../../samples/uiaction/uiaction.bkl,../../samples/validate/validate.bkl,../../samples/vscroll/vscroll.bkl,../../samples/webrequest/webrequest.bkl,../../samples/webview/webview.bkl,../../samples/widgets/widgets.bkl,../../samples/wizard/wizard.bkl,../../samples/wrapsizer/wrapsizer.bkl,../../samples/xrc/xrcdemo.bkl,../../samples/xti/xti.bkl,../../tests/benchmarks/bench.bkl,../../tests/test.bkl,../../utils/helpview/src/helpview.bkl,../../utils/hhp2cached/hhp2cached.bkl,../../utils/ifacecheck/src/ifacecheck.bkl,../../utils/screenshotgen/src/screenshotgen.bkl,../../utils/wxrc/wxrc.bkl,wx.bkl] ### COND_PLATFORM_WIN32_0="#" if test "x$PLATFORM_WIN32" = "x0" ; then diff --git a/configure b/configure index f558ca9a65..9a1e25bb86 100755 --- a/configure +++ b/configure @@ -755,6 +755,7 @@ COND_PLATFORM_WIN32_1 COND_PLATFORM_WIN32_0_TOOLKIT_GTK_TOOLKIT_VERSION_4 COND_PLATFORM_WIN32_0_TOOLKIT_GTK_TOOLKIT_VERSION_3 COND_PLATFORM_WIN32_0 +COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1 COND_PLATFORM_UNIX_1_USE_PLUGINS_0 COND_PLATFORM_UNIX_1_USE_GUI_1 COND_PLATFORM_UNIX_1_TOOLKIT_QT_USE_GUI_1_WXUNIV_0 @@ -42820,6 +42821,11 @@ EOF COND_PLATFORM_UNIX_1_USE_PLUGINS_0="" fi + COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1="#" + if test "x$PLATFORM_UNIX" = "x1" -a "x$USE_WEBVIEW_CHROMIUM" = "x1" ; then + COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1="" + fi + COND_PLATFORM_WIN32_0="#" if test "x$PLATFORM_WIN32" = "x0" ; then COND_PLATFORM_WIN32_0="" diff --git a/samples/webview/Makefile.in b/samples/webview/Makefile.in index c28f9e2d26..bedd9614b9 100644 --- a/samples/webview/Makefile.in +++ b/samples/webview/Makefile.in @@ -123,6 +123,8 @@ COND_MONOLITHIC_0___WXLIB_BASE_p = \ @COND_MONOLITHIC_0@__WXLIB_BASE_p = $(COND_MONOLITHIC_0___WXLIB_BASE_p) @COND_PLATFORM_MACOSX_1_USE_WEBVIEW_CHROMIUM_1@__package___depname \ @COND_PLATFORM_MACOSX_1_USE_WEBVIEW_CHROMIUM_1@ = package +@COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1@__copy_cef_files___depname \ +@COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1@ = copy_cef_files COND_MONOLITHIC_1___WXLIB_MONO_p = \ -lwx_$(PORTNAME)$(WXUNIVNAME)u$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX) @COND_MONOLITHIC_1@__WXLIB_MONO_p = $(COND_MONOLITHIC_1___WXLIB_MONO_p) @@ -155,7 +157,7 @@ COND_MONOLITHIC_1___WXLIB_MONO_p = \ ### Targets: ### -all: webview$(EXEEXT) $(__webview_bundle___depname) $(__package___depname) data $(__webview_helper___depname) $(__fix_cef_link___depname) +all: webview$(EXEEXT) $(__webview_bundle___depname) $(__package___depname) $(__copy_cef_files___depname) data $(__webview_helper___depname) $(__fix_cef_link___depname) install: @@ -223,6 +225,9 @@ webview$(EXEEXT): $(WEBVIEW_OBJECTS) $(__webview___win32rc) @COND_PLATFORM_MACOSX_1_USE_WEBVIEW_CHROMIUM_1@ cp -Rf webview_helper.app/Contents/Resources "$$helper_contents"; \ @COND_PLATFORM_MACOSX_1_USE_WEBVIEW_CHROMIUM_1@ done +@COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1@copy_cef_files: webview$(EXEEXT) +@COND_PLATFORM_UNIX_1_USE_WEBVIEW_CHROMIUM_1@ @for f in $(top_srcdir)//3rdparty/cef/Release/* $(top_srcdir)//3rdparty/cef/Resources/*; do [ -e $$f ] || ln -s $$f .; done + data: @mkdir -p . @for f in handler_advanced.html; do \ diff --git a/samples/webview/webview.bkl b/samples/webview/webview.bkl index d3c3b48fa5..cec1bb8839 100644 --- a/samples/webview/webview.bkl +++ b/samples/webview/webview.bkl @@ -45,6 +45,21 @@ done + + + + webview + all + + @for f in $(CEF_DIR)/Release/* $(CEF_DIR)/Resources/*; do [ -e $$f ] || ln -s $$f .; done + + +