Hello,
>From other ports I arrived to x11/qt5/qtbase.
The first broken dependency of qtbase is from pulseaudio:
audio/pulseaudio
sysutils/consolekit2
sysutils/polkit
devel/spidermonkey68 *
In Makefile it reads:
=================================
# Nothing in qtbase links to pulseaudio, but configure checks
# are recorded.
# The atspi is checked at configure time and used via D-Bus.
BUILD_DEPENDS = audio/pulseaudio \
=================================
This means that qt5 will not support pulse audio if it's not
installed before compilation?
If that is the case, as it is broken for now on arm, it wouldn't
be better to make a port flavor, or remove the dependency for arm
until pulseaudio is fixed?
I don't want to mess with mozilla for now, so I just removed the
pulseaudio dependency.
Now, the problem with qtbase is that clang is not implementing
some neon intrinsics on arm, e.g. vcvt_f16_f32.
I had problems in the past with neon in ports on arm, so I just
disabled all neon support:
===============================================================
--- Makefile.orig Tue Oct 13 23:24:26 2020
+++ Makefile Tue Oct 13 23:24:13 2020
@@ -116,8 +116,8 @@
# Nothing in qtbase links to pulseaudio, but configure checks
# are recorded.
# The atspi is checked at configure time and used via D-Bus.
-BUILD_DEPENDS = audio/pulseaudio \
- geo/geoclue \
+#BUILD_DEPENDS = audio/pulseaudio \
+BUILD_DEPENDS = geo/geoclue \
x11/gnome/at-spi2-core
RUN_DEPENDS-main = ${RUN_DEPENDS} \
@@ -256,8 +256,19 @@
post-extract:
mkdir -p ${WRKDIST}/mkspecs/openbsd-clang
+# Some FP16 instrinsics aren't available on arm.
+.if ${MACHINE_ARCH} == "arm"
+ grep -v 'load(qt_config)' ${FILESDIR}/clang-qmake.conf \
+ > ${WRKDIST}/mkspecs/openbsd-clang/qmake.conf
+ echo QMAKE_CFLAGS = -U__ARM_NEON__ -U__ARM_NEON -DPNG_ARM_NEON_OPT=0 \
+ >> ${WRKDIST}/mkspecs/openbsd-clang/qmake.conf
+ echo QMAKE_CXXFLAGS = '$$$$QMAKE_CFLAGS' \
+ >> ${WRKDIST}/mkspecs/openbsd-clang/qmake.conf
+ echo 'load(qt_config)' >> ${WRKDIST}/mkspecs/openbsd-clang/qmake.conf
+.else
cp ${FILESDIR}/clang-qmake.conf \
${WRKDIST}/mkspecs/openbsd-clang/qmake.conf
+.endif
cp ${WRKDIST}/mkspecs/openbsd-g++/qplatformdefs.h \
${WRKDIST}/mkspecs/openbsd-clang/
===============================================================
I used an orange pi one, so I had to add 2G of swap.
The data size limit has to be increased. I used
ulimit -d 1048576
but maybe just around 600M will be sufficient.
I had to shave twice before it finished, but it compiled.
I will try in the future disabling just FP16 intrinsics with
-U__ARM_FP16_FORMAT_IEEE
Regards,
adr.