aboutsummaryrefslogtreecommitdiff
path: root/projects/kimageformats
diff options
context:
space:
mode:
authortsdgeos <aacid@kde.org>2019-09-26 18:17:32 +0200
committerjonathanmetzman <31354670+jonathanmetzman@users.noreply.github.com>2019-09-26 09:17:32 -0700
commit58df29fd3f290fc25d7d7f61d4ce9ce782b1727b (patch)
tree8f565b32230d08f90466917370e945e501559dd7 /projects/kimageformats
parent198345dc17be486f587c8d609bc92c6affdcf9f3 (diff)
downloadoss-fuzz-58df29fd3f290fc25d7d7f61d4ce9ce782b1727b.tar.gz
Use 5.15 branch of Qt for now (#2888)
A direct clone now gives you dev which is future Qt 6, none of the code using Qt expects Qt6 yet Using 5.15 now (instead 5.12 before) means we have to disable sanitize=vptr in parts of qt in kimageformats since those parts now compile with no-rtti While at it make the compilation script a bit better: * Don't need to disable compressing rcc files, only needed to pass the CFLAGS to the QMAKE_CFLAGS * Also fix the "make qmake faster" sed command
Diffstat (limited to 'projects/kimageformats')
-rw-r--r--projects/kimageformats/Dockerfile2
-rw-r--r--projects/kimageformats/build.sh12
2 files changed, 7 insertions, 7 deletions
diff --git a/projects/kimageformats/Dockerfile b/projects/kimageformats/Dockerfile
index 5dd3dfac7..8e92b33a2 100644
--- a/projects/kimageformats/Dockerfile
+++ b/projects/kimageformats/Dockerfile
@@ -20,7 +20,7 @@ RUN apt-get install --yes cmake
RUN git clone --depth 1 https://github.com/madler/zlib.git
RUN git clone --depth 1 https://github.com/nih-at/libzip.git
RUN git clone --depth 1 git://anongit.kde.org/extra-cmake-modules
-RUN git clone --depth 1 git://code.qt.io/qt/qtbase.git
+RUN git clone --depth 1 --branch=5.15 git://code.qt.io/qt/qtbase.git
RUN git clone --depth 1 git://anongit.kde.org/karchive
RUN git clone --depth 1 git://anongit.kde.org/kimageformats
COPY build.sh $SRC
diff --git a/projects/kimageformats/build.sh b/projects/kimageformats/build.sh
index c4842e495..2928af297 100644
--- a/projects/kimageformats/build.sh
+++ b/projects/kimageformats/build.sh
@@ -15,13 +15,13 @@ make install -j$(nproc)
cd $SRC
cd qtbase
-# add the flags to Qt build too, we may as well sanitize Qt too (and also fixes memory sanitizer build)
-sed -i -e "s/QMAKE_CXXFLAGS += -stdlib=libc++/QMAKE_CXXFLAGS += -stdlib=libc++ $CXXFLAGS/g" mkspecs/linux-clang-libc++/qmake.conf
+# add the flags to Qt build too
+sed -i -e "s/QMAKE_CXXFLAGS += -stdlib=libc++/QMAKE_CXXFLAGS += -stdlib=libc++ $CXXFLAGS\nQMAKE_CFLAGS += $CFLAGS/g" mkspecs/linux-clang-libc++/qmake.conf
sed -i -e "s/QMAKE_LFLAGS += -stdlib=libc++/QMAKE_LFLAGS += -stdlib=libc++ -lpthread $CXXFLAGS/g" mkspecs/linux-clang-libc++/qmake.conf
-# make qmake compile faster TODO
-sed -i -e "s/MAKE\")/MAKE\" -j10)/g" configure
-# Disable compressing rcc files, triggers a warning in the memory sanitizer that i'm not sure is valid. TODO investigate properly
-sed -i -e "s/DEFINES += QT_RCC QT_NO_CAST_FROM_ASCII QT_NO_FOREACH/DEFINES += QT_NO_COMPRESS QT_RCC QT_NO_CAST_FROM_ASCII QT_NO_FOREACH/g" src/tools/rcc/rcc.pro
+# disable sanitize=vptr for harfbuzz since it compiles without rtti
+sed -i -e "s/TARGET = qtharfbuzz/TARGET = qtharfbuzz\nQMAKE_CXXFLAGS += -fno-sanitize=vptr/g" src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
+# make qmake compile faster
+sed -i -e "s/MAKE\")/MAKE\" -j$(nproc))/g" configure
./configure --glib=no --libpng=qt -opensource -confirm-license -static -no-opengl -no-icu -platform linux-clang-libc++ -v
cd src
../bin/qmake -o Makefile src.pro