Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possibility of F2FS Root? #2

Open
owenthewizard opened this issue Jun 28, 2017 · 1 comment
Open

Possibility of F2FS Root? #2

owenthewizard opened this issue Jun 28, 2017 · 1 comment

Comments

@owenthewizard
Copy link
Contributor

Is there any reason F2FS (could|should)n't be used for the root file system?

@ccrisan
Copy link
Owner

ccrisan commented Jun 29, 2017

Nope, it's just due to my lack of any experience with it :) In theory, with minimal changes it should work.

ccrisan pushed a commit that referenced this issue Nov 18, 2018
Drop patch #1; not needed anymore.

Drop patch #2; fixed upstream in a slightly different way.

Cc: Matt Weber <[email protected]>
Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ccrisan pushed a commit that referenced this issue Feb 17, 2019
Drop patch #1. uClibc no longer includes pthreads.h indirectly.

Drop patch #2. The sys/param.h header is included indirectly through the
local includes.h header since version 6.8p1.

Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ccrisan pushed a commit that referenced this issue May 14, 2019
ccrisan pushed a commit that referenced this issue May 14, 2019
Add patches fixing a number of build issues with uClibc. The issue fixed
in patch #2 has been reported upstream. Patch #3 has been suggested by
upstream but not applied yet.

Drop the _SUBDIR assignment. The configure script moved to top level
directory since upstream commit a947c49bec3 from 2014. This allows
AUTORECONF to find configure.ac.

Fixes:
http://autobuild.buildroot.net/results/801/801e2b2909363b5dcd9735362bb921e017569edc/
http://autobuild.buildroot.net/results/398/3984c6cdd3398645c8ad98bbe23af9090cf4bfcf/
http://autobuild.buildroot.net/results/632/632f93046f9cceffd9b604911542426c10967e0f/

Cc: Alexander Dahl <[email protected]>
Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
(cherry picked from commit 35b72be)
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Drop patch ccrisan#2 which was already fixed upstream long time ago in
commit 276a0d9500b8efc879e4f0c23e9d0e361849e295 using a slightly
different approach.

Signed-off-by: Jörg Krause <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Adjust patch ccrisan#2 to apply successfully.

Fixes:
http://autobuild.buildroot.net/results/bee/beea88e0848ccabcafe6b92c2a69074ed1114225/
http://autobuild.buildroot.net/results/4ba/4ba68d3e6764f395f3314c46c4d06b101c23479c/
http://autobuild.buildroot.net/results/345/3455044679a497fbee72378e59178724305720d9/
.. and many more.

The previous version 3.15.11 failed to build because of:

```
hpijs/hpcupsfax.cpp: In function 'int main(int, char**)':
prnt/hpijs/hpcupsfax.cpp:651:5: error: 'ppd_file_t' was not declared in
this scope
     ppd_file_t          *ppd;
     ^
```

`ppd_file_t` is defined in "cups/ppd.h" which was not included in 3.15.11, but
is in 3.16.11.

Signed-off-by: Jörg Krause <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Remove patch ccrisan#2 which has been applied upstream.

Signed-off-by: Jörg Krause <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Updated the zmq version detection patch to apply cleanly on 16.0.2.

Added patch ccrisan#2 to replace compile_and_run with compile_and_forget in the setup
code: this function is only used to check for the availability of "sys/un.h" and
we only need to compile the test code to make sure of that. This fixes the
cross-compilation.

Signed-off-by: Lionel Flandrin <[email protected]>
Reviewed-by: Yegor Yefremov <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
This patch is based on works [1] and [2].

With this patch, one can run the Qt5 WebEngine quicknanobrowser sample
with the following options.

	BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc" and
	BR2_TOOLCHAIN_BUILDROOT_CXX (Qt 5 needs a toolchain w/ wchar, NPTL, C++,
	dynamic library; for now it builds only with glibc)
	BR2_PACKAGE_LIBERATION (Qt needs at least one font)
	BR2_PACKAGE_QT5BASE_EXAMPLES (to install quicknanobrowser sample)
	BR2_PACKAGE_QT5BASE_GIF (do display gif)
	BR2_PACKAGE_QT5BASE_JPEG (do display jpeg)
	BR2_PACKAGE_QT5BASE_PNG (do display png)
	BR2_PACKAGE_QT5QUICKCONTROLS (needed by webengine)
	BR2_PACKAGE_QT5QUICKCONTROLS2 (needed by webengine)
	BR2_PACKAGE_QT5WEBENGINE (because it is what we want)

Qt WebEngine requires an Open(E)GL-capable backend. As an example, the
package rpi-userland must be enabled to build for a rpi.

	BR2_PACKAGE_RPI_USERLAND (to enable OpenGL ES backend)

To browse for HTTPS websites, please consider adding the following
options as well for SSL/TLS.

	BR2_PACKAGE_CA_CERT (for certificates)
	BR2_PACKAGE_NTPD (to sync date for certificates)

Since version 5.9, chromium requires udev at runtime (see note 4).

	BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV (input backend)

To run quicknanobrowser

	# cd /usr/lib/qt/examples/webengine/quicknanobrowser/
	# ./quicknanobrowser https://www.buildroot.org/

Note: The chromium.inc has been generated using the following command.

	( echo 'CHROMIUM_LICENSE_FILES = \' &&
	  cd output/build/qt5webengine-5.9.1/ && \
	  find "src/3rdparty/chromium/" -type f -iname "*LICENSE*" -o -iname "*COPYING*" -o -iname "*GPL*" | \
	  sed -e '/\.asm$/d' \
	      -e '/\.h$/d' \
	      -e '/\.c$/d' \
	      -e '/\.cc$/d' \
	      -e '/\.cpp$/d' \
	      -e '/\.pyc\?$/d' \
	      -e '/\.pl$/d' \
	      -e '/\.sha1$/d' \
	      -e '/\.patch$/d' \
	      -e '/licensecheck/d' \
	      -e 's,^,\t,' \
	      -e 's,$, \\,' | \
	  sort && \
	  echo '' ) >package/qt5/qt5webengine/chromium.inc

Note 2: Since 5.9.1, the chromium's copy of opus fails with neon [3].
Qt WebEngine can uses buildroot ffmpeg copy which compiles fine (using
qmake flag WEBENGINE_CONFIG+=use_system_ffmpeg). It implies selecting
the following options.

	BR2_PACKAGE_FFMPEG
	BR2_PACKAGE_OPUS
	BR2_PACKAGE_LIBVPX
	BR2_PACKAGE_WEBP
	BR2_PACKAGE_WEBP_DEMUX

	In file included from ../../3rdparty/chromium/third_party/opus/src/silk/arm/NSQ_neon.c:31:0:
	/home/gportay/src/buildroot/output-rpi3-qt5.9/host/lib/gcc/arm-buildroot-linux-gnueabihf/6.4.0/include/arm_neon.h:8997:1: error: inlining failed in call to always_inline ‘vld1q_s32’: target specific option mismatch
	 vld1q_s32 (const int32_t * __a)
	 ^~~~~~~~~
	../../3rdparty/chromium/third_party/opus/src/silk/arm/NSQ_neon.c:40:15: note: called from here
	     int32x4_t coef0 = vld1q_s32(coef32);
		       ^~~~~
	../../3rdparty/chromium/third_party/opus/src/silk/arm/NSQ_neon.c: At top level:
	cc1: warning: unrecognized command line option ‘-Wno-#pragma-messages’

Note 3: Version 5.6.2 causes a build issue while building chromium. The
build against this version is disabled until the release 5.6.3 is out.

Note 4: Here is trace when udev does not run

	# cd /usr/lib/qt/examples/webengine/quicknanobrowser
	# ./quicknanobrowser
	QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
	Unable to query physical screen size, defaulting to 100 dpi.
	To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).
	[0101/000248.161973:WARNING:resource_bundle_qt.cpp(114)] locale_file_path.empty() for locale
	[0101/000248.384693:WARNING:resource_bundle_qt.cpp(114)] locale_file_path.empty() for locale
	[202:223:0101/000248.484954:FATAL:udev_loader.cc(38)] Check failed: false.
	#0 0x0000742b93de <unknown>
	ccrisan#1 0x0000742c3c38 <unknown>
	ccrisan#2 0x000073e1e1aa <unknown>
	ccrisan#3 0x000073e1d96e <unknown>
	ccrisan#4 0x000073e1defa <unknown>
	ccrisan#5 0x000074af6364 <unknown>
	ccrisan#6 0x000074302878 <unknown>
	ccrisan#7 0x0000742c8fee <unknown>
	ccrisan#8 0x0000742c9f44 <unknown>
	ccrisan#9 0x0000742ca21e <unknown>
	ccrisan#10 0x0000742cac4c <unknown>
	ccrisan#11 0x0000742c87b2 <unknown>
	ccrisan#12 0x0000742da4f6 <unknown>
	ccrisan#13 0x000073ed9d38 <unknown>
	ccrisan#14 0x000073eda03c <unknown>
	ccrisan#15 0x0000742e9aec <unknown>
	ccrisan#16 0x0000742e71dc <unknown>

	Aborted

Note 5: On rpi and depending on what is insinde the .config, more GPU
memory should be allocated to run properly qt samples.

	#0 0x0000742c63de <unknown>
	ccrisan#1 0x0000742d0c38 <unknown>
	ccrisan#2 0x0000749d7bde <unknown>
	ccrisan#3 0x0000749e3c70 <unknown>
	ccrisan#4 0x00007530227c <unknown>
	ccrisan#5 0x000075302480 <unknown>
	ccrisan#6 0x0000752fb1e4 <unknown>
	ccrisan#7 0x00007430f878 <unknown>
	ccrisan#8 0x0000742d5fee <unknown>
	ccrisan#9 0x0000742d6f44 <unknown>
	ccrisan#10 0x0000742d721e <unknown>
	ccrisan#11 0x0000742d7ad6 <unknown>
	ccrisan#12 0x0000742d57b2 <unknown>
	ccrisan#13 0x0000742e74f6 <unknown>
	ccrisan#14 0x0000742f6a74 <unknown>
	ccrisan#15 0x0000742f41dc <unknown>

	Received signal 6
	#0 0x0000742c63de <unknown>
	ccrisan#1 0x0000742c66a0 <unknown>
	ccrisan#2 0x0000725b5d10 <unknown>
	[end of stack trace]
	qml: Render process exited with code 256 (abnormal exit)

	# mount /dev/mmcblk0p1 /mnt
	# sed '/^gpu_mem_/s,=.*,=200,' -i /mnt/config.txt
	# umount /mnt

Note 6: The first patch fixes a build issue when samples are compiled
without the support of printing [4]. This patch is already merged in
branch 5.9 [5] and concerns only 5.9.1.

	085c2c52 Always compile QWebEnginePage::print

It fixes the error below.

	.obj/browsermainwindow.o: In function `BrowserMainWindow::printRequested(QWebEnginePage*)': browsermainwindow.cpp:(.text+0x2cc0): undefined reference to `QWebEnginePage::print(QPrinter*, QWebEngineCallback<bool> const&)'

The second patch loads both libEGL and libGLESv2 symbols implicitly
instead of loading them with explicitly using hard-coded locations. It
fixes a bug when providers of lib*GL does not create libraries named
libEGL.so.1 and libGLESv2.s2 [6]. This patch is already merged in branch
5.9 [7].

	d4c621f6 Load libEGL and libGLES2 symbols implicitly

It fixes the error below.

	[327:347:1221/085837:ERROR:surface_factory_qt.cpp(68)] Failed to load /usr/lib/libGLESv2.so.2: /usr/lib/libGLESv2.so.2: cannot open shared object file: No such file or directory

[1]: http://lists.busybox.net/pipermail/buildroot/2015-July/132010.html
[2]: https://patchwork.ozlabs.org/patch/640633/
[3]: https://patchwork.ozlabs.org/patch/791332/
[4]: https://bugreports.qt.io/browse/QTBUG-61510
[5]: https://codereview.qt-project.org/#/c/198041/
[6]: https://bugreports.qt.io/browse/QTBUG-57761
[7]: https://codereview.qt-project.org/#/c/199554/

Cc: Akihiko Odaki <[email protected]>
Cc: Julien Corjon <[email protected]>
Signed-off-by: Gaël PORTAY <[email protected]>
[Arnout:
 - move more dependencies to _ARCH_DEPENDS;
 - mention all toolchain dependencies in the comments]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Qt WebEngine requires more GPU memory than initial setup.

This fixes crashes such as this one.

	#0 0x0000742c63de <unknown>
	ccrisan#1 0x0000742d0c38 <unknown>
	ccrisan#2 0x0000749d7bde <unknown>
	ccrisan#3 0x0000749e3c70 <unknown>
	ccrisan#4 0x00007530227c <unknown>
	ccrisan#5 0x000075302480 <unknown>
	ccrisan#6 0x0000752fb1e4 <unknown>
	ccrisan#7 0x00007430f878 <unknown>
	ccrisan#8 0x0000742d5fee <unknown>
	ccrisan#9 0x0000742d6f44 <unknown>
	ccrisan#10 0x0000742d721e <unknown>
	ccrisan#11 0x0000742d7ad6 <unknown>
	ccrisan#12 0x0000742d57b2 <unknown>
	ccrisan#13 0x0000742e74f6 <unknown>
	ccrisan#14 0x0000742f6a74 <unknown>
	ccrisan#15 0x0000742f41dc <unknown>

	Received signal 6
	#0 0x0000742c63de <unknown>
	ccrisan#1 0x0000742c66a0 <unknown>
	ccrisan#2 0x0000725b5d10 <unknown>
	[end of stack trace]
	qml: Render process exited with code 256 (abnormal exit)

Reported-by: Zoltan Gyarmati <[email protected]>
Signed-off-by: Gaël PORTAY <[email protected]>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
This brings the following changes:

$ git slog 65a10105564801094b18c3fcacf4dde4c44e4ab8..e1a52ce12a701b8ea4163d6719713e38c0e53d35
e1a52ce12a701b8ea4163d6719713e38c0e53d35 Merge pull request ccrisan#2 from mcpat/master
21764c4bc373dc7f770f9d87d77c5efca50d2733 Wrap timezone abbreviations with angle brackets if required

Signed-off-by: Marcel Patzlaff <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Drop patch ccrisan#1; applied upstream.

Drop patch ccrisan#2; not needed since we don't autoreconf, and the issue is
fixed upstream anyway.

Add license hash.

Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Drop patch ccrisan#1. uClibc no longer includes pthreads.h indirectly.

Drop patch ccrisan#2. The sys/param.h header is included indirectly through the
local includes.h header since version 6.8p1.

Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Add patches fixing a number of build issues with uClibc. The issue fixed
in patch ccrisan#2 has been reported upstream. Patch ccrisan#3 has been suggested by
upstream but not applied yet.

Drop the _SUBDIR assignment. The configure script moved to top level
directory since upstream commit a947c49bec3 from 2014. This allows
AUTORECONF to find configure.ac.

Fixes:
http://autobuild.buildroot.net/results/801/801e2b2909363b5dcd9735362bb921e017569edc/
http://autobuild.buildroot.net/results/398/3984c6cdd3398645c8ad98bbe23af9090cf4bfcf/
http://autobuild.buildroot.net/results/632/632f93046f9cceffd9b604911542426c10967e0f/

Cc: Alexander Dahl <[email protected]>
Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
New upstream at github. Update homepage link and download site.

Drop the custom extract command; we now get the source tree from github.

Drop patch ccrisan#2; the code detects rpc support.

Add optional dependency on libtirpc.

Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Thomas Petazzoni <[email protected]>
ZanSara pushed a commit to ZanSara/thingos that referenced this issue May 24, 2021
Drop patch ccrisan#2. Upstream commit d8a5d49c2d8359 includes stddef.h in a
higher level header.

Signed-off-by: Baruch Siach <[email protected]>
Signed-off-by: Peter Korsgaard <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants