From 90feedb6429df225b81bc279093ae1ca1278b391 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 8 Feb 2012 11:38:07 +0100 Subject: bootstrap configure.exe on windows it is *ugly* to have the binary in the repository. this adds a few seconds to the windows build, as the configure needs to be rebuilt, obviously. that's almost negligible. Change-Id: I40ffde23b3c3af2b6bab3e78cd0a9f433214b563 Reviewed-by: Rohan McGovern --- configure.bat | 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 configure.bat (limited to 'configure.bat') diff --git a/configure.bat b/configure.bat new file mode 100644 index 0000000000..e872de2797 --- /dev/null +++ b/configure.bat @@ -0,0 +1,121 @@ +::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +:: +:: Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +:: Contact: http://www.qt-project.org/ +:: +:: This file is part of the tools applications of the Qt Toolkit. +:: +:: $QT_BEGIN_LICENSE:LGPL$ +:: GNU Lesser General Public License Usage +:: This file may be used under the terms of the GNU Lesser General Public +:: License version 2.1 as published by the Free Software Foundation and +:: appearing in the file LICENSE.LGPL included in the packaging of this +:: file. Please review the following information to ensure the GNU Lesser +:: General Public License version 2.1 requirements will be met: +:: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +:: +:: In addition, as a special exception, Nokia gives you certain additional +:: rights. These rights are described in the Nokia Qt LGPL Exception +:: version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +:: +:: GNU General Public License Usage +:: Alternatively, this file may be used under the terms of the GNU General +:: Public License version 3.0 as published by the Free Software Foundation +:: and appearing in the file LICENSE.GPL included in the packaging of this +:: file. Please review the following information to ensure the GNU General +:: Public License version 3.0 requirements will be met: +:: http://www.gnu.org/copyleft/gpl.html. +:: +:: Other Usage +:: Alternatively, this file may be used in accordance with the terms and +:: conditions contained in a signed written agreement between you and Nokia. +:: +:: +:: +:: +:: +:: +:: $QT_END_LICENSE$ +:: +::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +@echo off +set QTSRC=%~dp0 +set QTDIR=%CD% +if exist configure.exe goto conf +echo Please wait while bootstrapping configure ... + +for %%C in (cl.exe icl.exe g++.exe perl.exe) do set %%C=%%~$PATH:C + +set nosyncqt= +if not exist include ( + if "%perl.exe%" == "" ( + echo Perl not found in PATH. Aborting. >&2 + exit /b 1 + ) + if not exist mkspecs ( + md mkspecs + if errorlevel 1 goto exit + ) + perl %QTSRC%bin\syncqt -outdir %QTDIR% %QTSRC% + if errorlevel 1 goto exit + set nosyncqt=-no-syncqt +) + +if not exist src\corelib\global\qconfig.h ( + if not exist src\corelib\global ( + md src\corelib\global + if errorlevel 1 goto exit + ) + echo #define Q_BIG_ENDIAN 4321 > src\corelib\global\qconfig.h + echo #define Q_LITTLE_ENDIAN 1234 >> src\corelib\global\qconfig.h + echo #define Q_BYTE_ORDER Q_LITTLE_ENDIAN >> src\corelib\global\qconfig.h +) + +if not exist tools\configure ( + md tools\configure + if errorlevel 1 goto exit +) +cd tools\configure +if errorlevel 1 goto exit + +echo #### Generated by configure.bat - DO NOT EDIT! ####> Makefile +echo/>> Makefile +for /f "tokens=3 usebackq" %%V in (`findstr QT_VERSION_STR %QTSRC%\src\corelib\global\qglobal.h`) do @echo QTVERSION = %%~V>> Makefile +if not "%cl.exe%" == "" ( + echo CXX = cl>>Makefile + echo EXTRA_CXXFLAGS =>>Makefile + rem This must have a trailing space. + echo QTSRC = %QTSRC% >> Makefile + set tmpl=win32 + set make=nmake +) else if not "%icl.exe%" == "" ( + echo CXX = icl>>Makefile + echo EXTRA_CXXFLAGS = /Zc:forScope>>Makefile + rem This must have a trailing space. + echo QTSRC = %QTSRC% >> Makefile + set tmpl=win32 + set make=nmake +) else if not "%g++.exe%" == "" ( + echo CXX = g++>>Makefile + echo EXTRA_CXXFLAGS =>>Makefile + rem This must NOT have a trailing space. + echo QTSRC = %QTSRC:\=/%>> Makefile + set tmpl=mingw + set make=mingw32-make +) else ( + echo No suitable compiler found in PATH. Aborting. >&2 + cd ..\.. + exit /b 1 +) +echo/>> Makefile +type %QTSRC%tools\configure\Makefile.%tmpl% >> Makefile + +%make% +if errorlevel 1 (cd ..\.. & exit /b 1) + +cd ..\.. + +:conf +configure.exe -srcdir %QTSRC% %nosyncqt% %* +:exit -- cgit v1.2.3