Changeset 59681 in vbox for trunk/configure
- Timestamp:
- Feb 15, 2016 1:15:47 PM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 105538
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/configure
r59469 r59681 82 82 WITH_GSOAP=0 83 83 WITH_QT4=1 84 WITH_QT5=0 84 85 WITH_SDL=1 85 86 WITH_SDL_TTF=1 … … 154 155 QT4DIR="/usr/lib/qt4 /usr/share/qt4 /usr/lib64/qt4 /usr /usr/local" 155 156 QT4DIR_PKGCONFIG=1 157 QT5DIR="/usr/lib/qt5 /usr/share/qt5 /usr/lib64/qt5 /usr /usr/local" 158 QT5DIR_PKGCONFIG=1 156 159 KBUILDDIR="`cd \`dirname $0\`; pwd`/kBuild" 157 160 DEVDIR="`cd \`dirname $0\`; pwd`/tools" … … 287 290 cat $ODIR.tmp_src.cc >> $LOG 288 291 echo "using the following command line:" >> $LOG 289 echo "$CXX $CXX_FLAGS - g -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc \"$1\"" >> $LOG290 $CXX $CXX_FLAGS - g -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc $1 >> $LOG 2>&1292 echo "$CXX $CXX_FLAGS -fPIC -g -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc \"$1\"" >> $LOG 293 $CXX $CXX_FLAGS -fPIC -g -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc $1 >> $LOG 2>&1 291 294 if [ $? -ne 0 ]; then 292 295 if [ -z "$4" ]; then … … 1500 1503 FLGQT4="-framework QtCore" 1501 1504 else 1502 log_failure "Qt4 framework not found (can be disabled using --disable-qt 4)"1505 log_failure "Qt4 framework not found (can be disabled using --disable-qt)" 1503 1506 fail 1504 1507 fi … … 1627 1630 1628 1631 # 1632 # Check for the Qt5 library, needed by the VirtualBox frontend 1633 # 1634 # Currently not fatal. 1635 # 1636 check_qt5() 1637 { 1638 foundqt5= 1639 test_header Qt5 1640 cat > $ODIR.tmp_src.cc << EOF 1641 #include <QtGlobal> 1642 extern "C" int main(void) 1643 { 1644 #if QT_VERSION >= 0x050501 1645 return 0; 1646 #else 1647 return 1; 1648 #endif 1649 } 1650 EOF 1651 if [ "$OS" = "darwin" ]; then 1652 # First check if there is the internal version of Qt. If yes nothing else 1653 # has to be done. 1654 QT_INTERNAL=`/bin/ls -rd1 $PWD/tools/$BUILD_TARGET.$BUILD_PLATFORM_ARCH/qt/* 2> /dev/null` 1655 for t in $QT_INTERNAL; do 1656 if [ -f "$t/Frameworks/QtCoreVBox.framework/QtCoreVBox" ]; then 1657 cnf_append "VBOX_WITH_ORACLE_QT" "1" 1658 log_success "use internal version" 1659 return 1660 fi 1661 done 1662 # Now try the user provided directory and some of the standard directories. 1663 QT_TRIES="$QT5DIR /System/Library /Library" 1664 for t in $QT_TRIES; do 1665 if [ -f "$t/Frameworks/QtCore.framework/QtCore" ]; then 1666 PATH_SDK_QT5="$t" 1667 break 1668 fi 1669 done 1670 # Add the necessary params for building the test application 1671 if [ -n "$PATH_SDK_QT5" ]; then 1672 foundqt5=1 1673 INCQT5=-I$PATH_SDK_QT5/Frameworks/QtCore.framework/Headers 1674 LIBQT5=-F$PATH_SDK_QT5/Frameworks 1675 FLGQT5="-framework QtCore" 1676 else 1677 log_failure "Qt5 framework not found (can be disabled using --disable-qt)" 1678 fail 1679 fi 1680 else # !darwin 1681 if [ $QT5DIR_PKGCONFIG -eq 1 ]; then 1682 # Default is to use pkg-config: 1683 if which_wrapper pkg-config > /dev/null; then 1684 qt5_ver=`pkg-config Qt5Core --modversion 2>> $LOG` 1685 if [ $? -eq 0 ]; then 1686 FLGQT5=`pkg-config Qt5Core --cflags` 1687 INCQT5=`strip_I "$FLGQT5"` 1688 LIBDIR5=`pkg-config Qt5Core --variable=libdir` 1689 LIBQT5=`pkg-config Qt5Core --libs` 1690 LIBQT5="-L$LIBDIR5 $LIBQT5" 1691 TOOLQT5=`pkg-config Qt5Core --variable=prefix` 1692 TOOLQT5BIN=`pkg-config Qt5Core --variable=host_bins` 1693 if test_compile "$LIBQT5 $LIBPTHREAD $I_INCQT5 $FLGQT5" qt5 qt5 nofatal; then 1694 test_execute_path "`strip_L "$LIBQT5"`" nofatal && foundqt5=3 # pkg-config 1695 fi 1696 fi 1697 else 1698 log_failure "pkg-config not found" 1699 fail 1700 fi 1701 fi 1702 if [ -z "$foundqt5" ]; then 1703 # Do it the old way (e.g. user has specified QT5DIR): 1704 for q in $QT5DIR "$PWD/tools/linux.$TARGET_MACHINE"/qt/v5.*; do 1705 INCQT5="$q/include $q/include/QtCore" 1706 FLGQT5="-DQT_SHARED" 1707 I_INCQT5=`prefix_I "$INCQT5"` 1708 LIBQT5="-L$q/lib -lQt5CoreVBox" 1709 TOOLQT5="$q" 1710 if test_compile "$LIBQT5 $LIBPTHREAD $I_INCQT5 $FLGQT5" qt5 qt5 nofatal && 1711 test_execute_path "`strip_L "$LIBQT5"`" nofatal; then 1712 foundqt5=2 # internal 1713 break; 1714 fi 1715 LIBQT5="-L$q/lib -lQt5Core" 1716 if test_compile "$LIBQT5 $LIBPTHREAD $I_INCQT5 $FLGQT5" qt5 qt5 nofatal && 1717 test_execute_path "`strip_L "$LIBQT5"`" nofatal; then 1718 foundqt5=1 # no pkg-config, Qt directory 1719 break; 1720 fi 1721 done 1722 fi 1723 fi 1724 if [ -n "$foundqt5" ]; then 1725 # We decided which version of Qt to use, now enforce the version requirement: 1726 cat > $ODIR.tmp_src.cc << EOF 1727 #include <cstdio> 1728 #include <QtGlobal> 1729 extern "C" int main(void) 1730 { 1731 printf("found version %s", QT_VERSION_STR); 1732 #if QT_VERSION >= 0x050501 1733 printf(", OK.\n"); 1734 return 0; 1735 #else 1736 printf(", expected version 5.5.1 or higher\n"); 1737 return 1; 1738 #endif 1739 } 1740 EOF 1741 [ -n "$INCQT5" ] && I_INCQT5=`prefix_I "$INCQT5"` 1742 if test_compile "$LIBQT5 $LIBPTHREAD $I_INCQT5 $FLGQT5" qt5 qt5 nofatal; then 1743 if test_execute_path "`strip_L "$LIBQT5"`"; then 1744 if [ "$OS" = "darwin" ]; then 1745 # Successful build & run the test application so add the necessary 1746 # params to AutoConfig.kmk: 1747 cnf_append "PATH_SDK_QT5_INC" "$PATH_SDK_QT5/Frameworks" 1748 cnf_append "PATH_SDK_QT5_LIB" "$PATH_SDK_QT5/Frameworks" 1749 cnf_append "PATH_SDK_QT5" "$PATH_SDK_QT5/Frameworks" 1750 # Check for the moc tool in the Qt directory found & some standard 1751 # directories. 1752 for q in $PATH_SDK_QT5 /usr /Developer/Tools/Qt; do 1753 if which_wrapper "$q/bin/moc" > /dev/null; then 1754 cnf_append "PATH_TOOL_QT5_BIN" "$q/bin" 1755 fi 1756 done 1757 else 1758 # Strip .../QtCore as we add components ourself: 1759 INCQT5=`echo "$INCQT5"|$KBUILD_SED 's|\([^ ]*\)/QtCore|\1|g; s| $||g'` 1760 # store only the first path, remove all other paths 1761 # most likely pkg-config gave us -I/usr/include/qt5 -I/usr/include/qt5/QtCore 1762 INCQT5=`echo "$INCQT5"|$KBUILD_SED 's|\([^ ]*\) .*|\1|'` 1763 cnf_append "VBOX_PATH_QT_LIB" "`strip_L "$LIBQT5"`" 1764 cnf_append "PATH_SDK_QT5_INC" "$INCQT5" 1765 # This is not quite right since the qt libpath does not have to be first... 1766 cnf_append "PATH_SDK_QT5_LIB" '$'"(firstword `strip_L "$LIBQT5"`)" 1767 if [ "$foundqt5" = "2" ]; then 1768 cnf_append "VBOX_WITH_ORACLE_QT" "1" 1769 fi 1770 if [ "$foundqt5" != "3" ]; then 1771 TOOLQT5BIN="$TOOLQT5/bin" 1772 fi 1773 test_header "Qt5 devtools" 1774 # Try it with a suffix, some platforms use that 1775 if which_wrapper "$TOOLQT5BIN/moc-qt5" > /dev/null; then 1776 QT5BINSUFF="-qt5" 1777 else 1778 QT5BINSUFF="" 1779 fi 1780 moc_ver=`$TOOLQT5BIN/moc$QT5BINSUFF -v 2>&1|sed 's+^.*(Qt \(.*\))+\1+'` 1781 if [ $? -ne 0 ]; then 1782 log_failure "moc$QT5BINSUFF not working" 1783 fail 1784 else 1785 log_success "found version $moc_ver" 1786 cnf_append "VBOX_PATH_QT" "$TOOLQT5" 1787 cnf_append "PATH_SDK_QT5" "$TOOLQT5" 1788 cnf_append "PATH_TOOL_QT5_BIN" "$TOOLQT5BIN" 1789 [ -n "$QT5BINSUFF" ] && cnf_append "TOOL_QT5_BIN_SUFF" "$QT5BINSUFF" 1790 fi 1791 fi 1792 fi 1793 else 1794 log_failure "qt5 not working" 1795 fail 1796 fi 1797 else 1798 log_failure "qt5 not found" 1799 fail 1800 fi 1801 } 1802 1803 1804 # 1629 1805 # Check for libvpx 1630 1806 # … … 2278 2454 [ $WITH_VMMRAW -eq 1 ] && echo " --disable-vmmraw disable VMM raw mode (VT-x/AMD-V mandatory!)" 2279 2455 [ $WITH_SDL_TTF -eq 1 ] && echo " --disable-sdl-ttf disable SDL_ttf detection" 2456 [ $WITH_QT4 -eq 1 ] && echo " --disable-qt disable Qt detection" 2457 [ $WITH_QT5 -eq 1 ] && echo " --disable-qt disable Qt detection" 2280 2458 [ $WITH_ALSA -eq 1 ] && echo " --disable-alsa disable the ALSA sound backend" 2281 2459 [ $WITH_PULSE -eq 1 ] && echo " --disable-pulse disable the PulseAudio backend" … … 2283 2461 [ $WITH_KMODS -eq 1 ] && echo " --disable-kmods don't build Linux kernel modules (host and guest)" 2284 2462 [ $WITH_OPENGL -eq 1 ] && echo " --disable-opengl disable OpenGL support (2D & 3D)" 2463 [ $WITH_QT4 -eq 0 ] && echo " --enable-qt4 enable Qt4 detection" 2464 [ $WITH_QT5 -eq 0 ] && echo " --enable-qt5 enable Qt5 detection" 2285 2465 [ $WITH_GSOAP -eq 0 ] && echo " --enable-webservice enable the webservice stuff" 2286 2466 [ $OSE -eq 1 ] && echo " --enable-vnc enable the VNC server" … … 2316 2496 [ "$OS" = "darwin" ] && echo " only, ignored for the rest)" 2317 2497 [ "$OS" = "linux" ] && echo " --with-linux=DIR Linux kernel source directory [$LINUX]" 2318 [ $WITH_QT4 -eq 1 ] && echo " --with-qt-dir=DIR directory for Qt4 headers/libraries [pkgconfig]" 2498 [ $WITH_QT4 -eq 1 ] && echo " --with-qt-dir=DIR directory for Qt headers/libraries [pkgconfig]" 2499 [ $WITH_QT5 -eq 1 ] && echo " --with-qt-dir=DIR directory for Qt headers/libraries [pkgconfig]" 2319 2500 [ $WITH_GSOAP -eq 1 ] && echo " --with-gsoap-dir=PATH directory for gSOAP compiler/headers/libraries" 2320 2501 [ $WITH_GSOAP -eq 1 ] && echo " (soapcpp2 and wsdl2h, soapstd2.h, libgsoap++.a/so)" … … 2408 2589 fi 2409 2590 ;; 2410 --with-qt-dir=*|--with-qt4-dir=*) 2411 QT4DIR=`echo $option | cut -d'=' -f2` 2412 QT4DIR_PKGCONFIG=0 2591 --with-qt-dir=*) 2592 [ $WITH_QT4 -eq 1 ] && QT4DIR=`echo $option | cut -d'=' -f2` 2593 [ $WITH_QT4 -eq 1 ] && QT4DIR_PKGCONFIG=0 2594 [ $WITH_QT5 -eq 1 ] && QT5DIR=`echo $option | cut -d'=' -f2` 2595 [ $WITH_QT5 -eq 1 ] && QT5DIR_PKGCONFIG=0 2413 2596 ;; 2414 2597 --with-openssl-dir=*) … … 2462 2645 --disable-qt) 2463 2646 [ $WITH_QT4 -eq 1 ] && WITH_QT4=0 2464 ;; 2465 --disable-qt4) 2647 [ $WITH_QT5 -eq 1 ] && WITH_QT5=0 2648 ;; 2649 --enable-qt4) 2650 [ $WITH_QT4 -eq 0 ] && WITH_QT4=1 2651 [ $WITH_QT5 -eq 1 ] && WITH_QT5=0 2652 ;; 2653 --enable-qt5) 2654 [ $WITH_QT5 -eq 0 ] && WITH_QT5=1 2466 2655 [ $WITH_QT4 -eq 1 ] && WITH_QT4=0 2467 2656 ;; … … 2545 2734 WITH_OPENGL=0 2546 2735 WITH_QT4=0 2736 WITH_QT5=0 2547 2737 ;; 2548 2738 --ose) … … 2691 2881 fi 2692 2882 [ $WITH_XPCOM -eq 0 ] && cnf_append "VBOX_WITH_MAIN" "" 2693 [ $WITH_QT4 -eq 0 ] && cnf_append "VBOX_WITH_QTGUI" "" 2883 [ $WITH_QT4 -eq 0 -a $WITH_QT5 -eq 0 ] && cnf_append "VBOX_WITH_QTGUI" "" 2884 [ $WITH_QT5 -eq 1 ] && cnf_append "VBOX_WITH_QTGUI_V5" "1" 2694 2885 [ $WITH_SDL_TTF -eq 0 ] && cnf_append "VBOX_WITH_SECURELABEL" "" 2695 2886 [ $WITH_PYTHON -eq 0 ] && cnf_append "VBOX_WITH_PYTHON" "" … … 2741 2932 [ $WITH_OPENGL -eq 1 ] && check_opengl 2742 2933 [ $WITH_QT4 -eq 1 ] && check_qt4 2934 [ $WITH_QT5 -eq 1 ] && check_qt5 2743 2935 [ $WITH_PYTHON -eq 1 ] && check_python 2744 2936 [ $WITH_JAVA -eq 1 ] && check_java
Note:
See TracChangeset
for help on using the changeset viewer.