aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/Makefile
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2015-09-22 14:36:39 -0400
committerMichal Marek <mmarek@suse.com>2015-10-14 09:00:25 -0400
commitd1b0dc90abdb3487a8b60ac7c843708f98ff409a (patch)
treeaad3ff5351f991af4e1fda70b8fb1fcbeb25e81d /scripts/kconfig/Makefile
parentb4ff1de3b8381a471d1b1320be0daa3f8fc2ed85 (diff)
Update the buildsystem for KConfig finding Qt
The buildsystem will now only search for Qt 4 and Qt 5. Support for Qt 2 and 3 was dropped in the previous commits (Qt 3 was EOL'ed in 2010 or so...). For Qt 5, to be future-proof with the future direction notice appearing in the 5.5 release, C++11 support is automatically enabled. Signed-off-by: Thiago Macieira <thiago.macieira@intel.com> Signed-off-by: Michal Marek <mmarek@suse.com>
Diffstat (limited to 'scripts/kconfig/Makefile')
-rw-r--r--scripts/kconfig/Makefile73
1 files changed, 28 insertions, 45 deletions
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 9b5b8c6796b9..33c49944e1a7 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -226,53 +226,36 @@ $(obj)/.tmp_qtcheck: $(src)/Makefile
226 226
227# Qt needs some extra effort... 227# Qt needs some extra effort...
228$(obj)/.tmp_qtcheck: 228$(obj)/.tmp_qtcheck:
229 @set -e; $(kecho) " CHECK qt"; dir=""; pkg=""; \ 229 @set -e; $(kecho) " CHECK qt"; \
230 if ! pkg-config --exists QtCore 2> /dev/null; then \ 230 qtver=`qmake -query QT_VERSION` || { \
231 echo "* Unable to find the Qt4 tool qmake. Trying to use Qt3"; \ 231 echo >&2 "*"; \
232 pkg-config --exists qt 2> /dev/null && pkg=qt; \ 232 echo >&2 "* qmake failed."; \
233 pkg-config --exists qt-mt 2> /dev/null && pkg=qt-mt; \ 233 echo >&2 "*"; \
234 if [ -n "$$pkg" ]; then \ 234 exit 1; \
235 cflags="\$$(shell pkg-config $$pkg --cflags)"; \ 235 }; \
236 libs="\$$(shell pkg-config $$pkg --libs)"; \ 236 qtlibdir=`qmake -query QT_INSTALL_LIBS`; \
237 moc="\$$(shell pkg-config $$pkg --variable=prefix)/bin/moc"; \ 237 qthdrdir=`qmake -query QT_INSTALL_HEADERS`; \
238 dir="$$(pkg-config $$pkg --variable=prefix)"; \ 238 qtbindir=`qmake -query QT_INSTALL_BINS`; \
239 else \ 239 cflags="-I$$qthdrdir -I$$qthdrdir/QtCore -I$$qthdrdir/QtGui"; \
240 for d in $$QTDIR /usr/share/qt* /usr/lib/qt*; do \ 240 case "$$qtver" in \
241 if [ -f $$d/include/qconfig.h ]; then dir=$$d; break; fi; \ 241 5.*) \
242 done; \ 242 cflags="$$cflags -I$$qthdrdir/QtWidgets -std=c++11 -fPIC"; \
243 if [ -z "$$dir" ]; then \ 243 libs="-L$$qtlibdir -lQt5Widgets -lQt5Gui -lQt5Core "; \
244 echo >&2 "*"; \ 244 ;; \
245 echo >&2 "* Unable to find any Qt installation. Please make sure that"; \ 245 4.*) \
246 echo >&2 "* the Qt4 or Qt3 development package is correctly installed and"; \ 246 libs="-L$$qtlibdir -lQtGui -lQtCore"; \
247 echo >&2 "* either qmake can be found or install pkg-config or set"; \ 247 ;; \
248 echo >&2 "* the QTDIR environment variable to the correct location."; \ 248 *) \
249 echo >&2 "*"; \ 249 echo >&2 "*"; \
250 false; \ 250 echo >&2 "* Found qmake but it is for Qt version $$qtver, which is not supported."; \
251 fi; \ 251 echo >&2 "* Please install either Qt 4.8 or 5.x."; \
252 libpath=$$dir/lib; lib=qt; osdir=""; \ 252 echo >&2 "*"; \
253 $(HOSTCXX) -print-multi-os-directory > /dev/null 2>&1 && \ 253 exit 1; \
254 osdir=x$$($(HOSTCXX) -print-multi-os-directory); \ 254 ;; \
255 test -d $$libpath/$$osdir && libpath=$$libpath/$$osdir; \ 255 esac; \
256 test -f $$libpath/libqt-mt.so && lib=qt-mt; \
257 cflags="-I$$dir/include"; \
258 libs="-L$$libpath -Wl,-rpath,$$libpath -l$$lib"; \
259 moc="$$dir/bin/moc"; \
260 fi; \
261 if [ ! -x $$dir/bin/moc -a -x /usr/bin/moc ]; then \
262 echo "*"; \
263 echo "* Unable to find $$dir/bin/moc, using /usr/bin/moc instead."; \
264 echo "*"; \
265 moc="/usr/bin/moc"; \
266 fi; \
267 else \
268 cflags="\$$(shell pkg-config QtCore QtGui --cflags)"; \
269 libs="\$$(shell pkg-config QtCore QtGui --libs)"; \
270 moc="\$$(shell pkg-config QtCore --variable=moc_location)"; \
271 [ -n "$$moc" ] || moc="\$$(shell pkg-config QtCore --variable=prefix)/bin/moc"; \
272 fi; \
273 echo "KC_QT_CFLAGS=$$cflags" > $@; \ 256 echo "KC_QT_CFLAGS=$$cflags" > $@; \
274 echo "KC_QT_LIBS=$$libs" >> $@; \ 257 echo "KC_QT_LIBS=$$libs" >> $@; \
275 echo "KC_QT_MOC=$$moc" >> $@ 258 echo "KC_QT_MOC=$$qtbindir/moc" >> $@
276endif 259endif
277 260
278$(obj)/gconf.o: $(obj)/.tmp_gtkcheck 261$(obj)/gconf.o: $(obj)/.tmp_gtkcheck