Build cross platform desktop apps with JavaScript, HTML, and CSS.
It's easier than you think.
If you can build a website, you can build a desktop app. Electron is a
framework for creating native applications with web technologies like
JavaScript, HTML, and CSS. It takes care of the hard parts so you can
focus on the core of your application.
===> The following configuration options are available for electron28-28.3.3_1:
CODECS=on: Compile and enable patented codecs like H.264
CUPS=on: CUPS printing system support
DEBUG=off: Build with debugging support
DIST=off: Build distribution zip files
DRIVER=on: Install chromedriver
KERBEROS=on: Kerberos support
LTO=off: Use Link-Time Optimization
PIPEWIRE=on: Screen capture via PipeWire
====> Options available for the group AUDIO
ALSA=off: ALSA audio architecture support
PULSEAUDIO=off: PulseAudio sound server support
SNDIO=on: Sndio audio support
====> Kerberos support: you can only select none or one of them
HEIMDAL=off: Heimdal Kerberos (security/heimdal)
HEIMDAL_BASE=off: Heimdal Kerberos (base)
MIT=off: MIT Kerberos (security/krb5)
===> Use 'make config' to modify these settings
devel/electron*: Fix build on main
After src snapshot 0c47b9c211, the build began failing with:
../../third_party/nasm/include/compiler.h:249:21: error: static
declaration of 'mempcpy' follows non-static declaration
249 | static inline void *mempcpy(void *dst, const void *src, size_t n)
| ^
/usr/include/string.h:71:8: note: previous declaration is here
71 | void *(mempcpy)(void * __restrict, const void * __restrict, size_t);
| ^
- Restore a default definition of HAVE_MEMPCPY to indicate that
mempcpy(3) is available. It has been part of FreeBSD since 13.1.
- Remove a patch used to detect mempcpy(3) in /usr/include/string.h. It
is no longer necessary and does not detect the function after src
snapshot 0c47b9c211.
Approved by: tagattie (maintainer)
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D46054
all: drop support for FreeBSD 13.2 which reached EOL today
Thanks again to jbeich for noticing various things I overlooked.
Reviewed by: acm, ashish, eduardo, ehaupt, eugen, jbeich, martymac, mat,
nobukata, sunpoet, tagattie, yuri, arrowd, kde
Differential Revision: https://reviews.freebsd.org/D45141
devel/electron28: Fix build with ninja 1.12.0
Fix race conditions where generated headers are not created before they
are needed in the build.
Ninja 1.12.0 removed the `-w dupbuild` option and the default behavior
is now equivalent to passing `-w dupbuild=err` in previous versions.
PR: 278693
Approved by: portmgr (blanket)
devel/electron28: fix build with clang 18
Clang 18 has become more stringent about narrowing in initializer lists,
resulting in errors when building devel/electron28:
../../third_party/webrtc/pc/legacy_stats_collector.cc:191:54: error:
non-constant-expression cannot be narrowed from type 'double' to 'float' in
initializer list [-Wc++11-narrowing-const-reference]
191 | {StatsReport::kStatsValueNameTotalAudioEnergy,
info.total_output_energy},
|
^~~~~~~~~~~~~~~~~~~~~~~~
../../third_party/webrtc/pc/legacy_stats_collector.cc:193:8: error:
non-constant-expression cannot be narrowed from type 'double' to 'float' in
initializer list [-Wc++11-narrowing-const-reference]
193 | info.total_output_duration}};
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
and later:
In file included from ../../cc/layers/mirror_layer_impl.cc:5:
(Only the first 15 lines of the commit message are shown above )
devel/electron28: add port: Build cross-platform desktop apps with JavaScript,
HTML, and CSS
Build cross platform desktop apps with JavaScript, HTML, and CSS.
It's easier than you think.
If you can build a website, you can build a desktop app. Electron is a
framework for creating native applications with web technologies like
JavaScript, HTML, and CSS. It takes care of the hard parts so you can
focus on the core of your application.
WWW: https://electronjs.org/