summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/configure/Makefile.mingw92
-rw-r--r--tools/configure/Makefile.win32157
-rw-r--r--tools/configure/configureapp.cpp22
3 files changed, 264 insertions, 7 deletions
diff --git a/tools/configure/Makefile.mingw b/tools/configure/Makefile.mingw
new file mode 100644
index 0000000000..5951cb4e92
--- /dev/null
+++ b/tools/configure/Makefile.mingw
@@ -0,0 +1,92 @@
+CORESRC = $(QTSRC)src/corelib
+TOOLSRC = $(QTSRC)tools
+CONFSRC = $(TOOLSRC)/configure
+
+RAW_PCH = configure_pch.h
+PCH = $(RAW_PCH).gch/c++
+CXX = g++
+DEFINES = -DUNICODE -DQT_NODLL -DQT_NO_DATASTREAM -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DCOMMERCIAL_VERSION
+INCPATH = -I"../../include" -I"../../include/QtCore" -I"../../include/QtCore/$(QTVERSION)" -I"../../include/QtCore/$(QTVERSION)/QtCore" -I"$(TOOLSRC)/shared" -I"$(QTSRC)mkspecs/win32-g++"
+CXXFLAGS_BARE = -fno-rtti -fno-exceptions -mthreads -Wall -Wextra $(DEFINES) $(INCPATH)
+CXXFLAGS = -include $(RAW_PCH) $(CXXFLAGS_BARE)
+LINK = g++
+LFLAGS = -Wl,-subsystem,console -mthreads
+LIBS = -lole32 -ladvapi32 -luuid
+
+TARGET = ../../configure.exe
+
+OBJECTS = \
+ main.o \
+ configureapp.o \
+ environment.o \
+ tools.o \
+ qbytearray.o \
+ qbytearraymatcher.o \
+ qhash.o \
+ qlist.o \
+ qlocale.o \
+ qlocale_win.o \
+ qlocale_tools.o \
+ qvector.o \
+ qutfcodec.o \
+ qtextcodec.o \
+ qglobal.o \
+ qnumeric.o \
+ qbuffer.o \
+ qdatastream.o \
+ qdir.o \
+ qdiriterator.o \
+ qfile.o \
+ qfileinfo.o \
+ qabstractfileengine.o \
+ qfilesystementry.o \
+ qfilesystemengine.o \
+ qfilesystemengine_win.o \
+ qfilesystemiterator_win.o \
+ qfsfileengine.o \
+ qfsfileengine_win.o \
+ qfsfileengine_iterator.o \
+ qiodevice.o \
+ qtextstream.o \
+ qlogging.o \
+ qtemporaryfile.o \
+ qsystemlibrary.o \
+ qbitarray.o \
+ qdatetime.o \
+ qmap.o \
+ qregexp.o \
+ qstring.o \
+ qstringlist.o \
+ qvsnprintf.o \
+ qvariant.o \
+ qsystemerror.o \
+ qurl.o \
+ qmetatype.o \
+ qmalloc.o \
+ qxmlstream.o \
+ qxmlutils.o \
+ quuid.o \
+ qcryptographichash.o \
+ registry.o
+
+$(TARGET): $(OBJECTS)
+ $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS)
+
+$(OBJECTS): $(PCH)
+
+CHK_DIR_EXISTS = test -d
+MKDIR=mkdir -p
+$(PCH): $(CONFSRC)/configure_pch.h
+ @$(CHK_DIR_EXISTS) $(RAW_PCH).gch || $(MKDIR) $(RAW_PCH).gch
+ $(CXX) -x c++-header -c $(CXXFLAGS_BARE) -o $@ $<
+
+VPATH = $(CONFSRC):$(TOOLSRC)/shared/windows:$(CORESRC)/global:$(CORESRC)/kernel:$(CORESRC)/tools:$(CORESRC)/codecs:$(CORESRC)/io:$(CORESRC)/xml:$(CORESRC)/plugin
+
+main.o: $(CONFSRC)/configureapp.h
+configureapp.o: $(CONFSRC)/configureapp.h $(CONFSRC)/environment.h $(CONFSRC)/tools.h
+environment.o: $(CONFSRC)/environment.h
+tools.o: $(CONFSRC)/tools.h
+
+clean:
+ -rm -f *.o
+ -rm -rf *.gch
diff --git a/tools/configure/Makefile.win32 b/tools/configure/Makefile.win32
new file mode 100644
index 0000000000..92de55f137
--- /dev/null
+++ b/tools/configure/Makefile.win32
@@ -0,0 +1,157 @@
+CORESRC = $(QTSRC)src\corelib
+TOOLSRC = $(QTSRC)tools
+CONFSRC = $(TOOLSRC)\configure
+
+PCH = configure_pch.pch
+DEFINES = -DUNICODE -DQT_NODLL -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DCOMMERCIAL_VERSION
+INCPATH = -I"..\..\include" -I"..\..\include\QtCore" -I"..\..\include\QtCore\$(QTVERSION)" -I"..\..\include\QtCore\$(QTVERSION)\QtCore" -I"$(TOOLSRC)\shared" -I"$(QTSRC)mkspecs\win32-msvc2008"
+CXXFLAGS_BARE = -nologo -Zm200 -Zc:wchar_t -MT -W3 -GR -EHsc -w34100 -w34189 $(EXTRA_CXXFLAGS) $(DEFINES) $(INCPATH)
+CXXFLAGS = -FIconfigure_pch.h -Yuconfigure_pch.h -Fp$(PCH) -MP $(CXXFLAGS_BARE)
+LINK = link
+LFLAGS = /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /SUBSYSTEM:CONSOLE "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST /MANIFESTFILE:"configure.intermediate.manifest"
+LIBS = ole32.lib advapi32.lib
+
+TARGET = ..\..\configure.exe
+
+OBJECTS = \
+ main.obj \
+ configureapp.obj \
+ environment.obj \
+ tools.obj \
+ qbytearray.obj \
+ qbytearraymatcher.obj \
+ qhash.obj \
+ qlist.obj \
+ qlocale.obj \
+ qlocale_win.obj \
+ qlocale_tools.obj \
+ qvector.obj \
+ qutfcodec.obj \
+ qtextcodec.obj \
+ qglobal.obj \
+ qnumeric.obj \
+ qbuffer.obj \
+ qdatastream.obj \
+ qdir.obj \
+ qdiriterator.obj \
+ qfile.obj \
+ qfileinfo.obj \
+ qabstractfileengine.obj \
+ qfilesystementry.obj \
+ qfilesystemengine.obj \
+ qfilesystemengine_win.obj \
+ qfilesystemiterator_win.obj \
+ qfsfileengine.obj \
+ qfsfileengine_win.obj \
+ qfsfileengine_iterator.obj \
+ qiodevice.obj \
+ qtextstream.obj \
+ qlogging.obj \
+ qtemporaryfile.obj \
+ qsystemlibrary.obj \
+ qbitarray.obj \
+ qdatetime.obj \
+ qmap.obj \
+ qregexp.obj \
+ qstring.obj \
+ qstringlist.obj \
+ qvsnprintf.obj \
+ qvariant.obj \
+ qsystemerror.obj \
+ qurl.obj \
+ qmetatype.obj \
+ qmalloc.obj \
+ qxmlstream.obj \
+ qxmlutils.obj \
+ quuid.obj \
+ qcryptographichash.obj \
+ registry.obj
+
+$(TARGET): $(OBJECTS)
+ $(LINK) $(LFLAGS) /OUT:$(TARGET) @<<
+ $(OBJECTS) $(LIBS)
+<<
+ mt.exe -nologo -manifest "configure.intermediate.manifest" -outputresource:$(TARGET);1
+
+clean:
+ -del *.obj
+ -del *.pch
+ -del configure.intermediate.manifest
+
+$(PCH): $(CONFSRC)\configure_pch.h
+ $(CXX) -c -Yc $(CXXFLAGS_BARE) -Fp$@ -Foconfigure_pch.obj -TP $**
+
+main.obj: $(CONFSRC)\main.cpp $(CONFSRC)\configureapp.h $(PCH)
+configureapp.obj: $(CONFSRC)\configureapp.cpp $(CONFSRC)\configureapp.h $(CONFSRC)\environment.h $(CONFSRC)\tools.h $(PCH)
+environment.obj: $(CONFSRC)\environment.cpp $(CONFSRC)\environment.h $(PCH)
+tools.obj: $(CONFSRC)\tools.cpp $(CONFSRC)\tools.h $(PCH)
+registry.obj: $(TOOLSRC)\shared\windows\registry.cpp $(PCH)
+qbytearray.obj: $(CORESRC)\tools\qbytearray.cpp $(PCH)
+qbytearraymatcher.obj: $(CORESRC)\tools\qbytearraymatcher.cpp $(PCH)
+qhash.obj: $(CORESRC)\tools\qhash.cpp $(PCH)
+qlist.obj: $(CORESRC)\tools\qlist.cpp $(PCH)
+qlocale.obj: $(CORESRC)\tools\qlocale.cpp $(PCH)
+qlocale_win.obj: $(CORESRC)\tools\qlocale_win.cpp $(PCH)
+qlocale_tools.obj: $(CORESRC)\tools\qlocale_tools.cpp $(PCH)
+qvector.obj: $(CORESRC)\tools\qvector.cpp $(PCH)
+qutfcodec.obj: $(CORESRC)\codecs\qutfcodec.cpp $(PCH)
+qtextcodec.obj: $(CORESRC)\codecs\qtextcodec.cpp $(PCH)
+qglobal.obj: $(CORESRC)\global\qglobal.cpp $(PCH)
+qnumeric.obj: $(CORESRC)\global\qnumeric.cpp $(PCH)
+qbuffer.obj: $(CORESRC)\io\qbuffer.cpp $(PCH)
+qdatastream.obj: $(CORESRC)\io\qdatastream.cpp $(PCH)
+qdir.obj: $(CORESRC)\io\qdir.cpp $(PCH)
+qdiriterator.obj: $(CORESRC)\io\qdiriterator.cpp $(PCH)
+qfile.obj: $(CORESRC)\io\qfile.cpp $(PCH)
+qfileinfo.obj: $(CORESRC)\io\qfileinfo.cpp $(PCH)
+qabstractfileengine.obj: $(CORESRC)\io\qabstractfileengine.cpp $(PCH)
+qfilesystementry.obj: $(CORESRC)\io\qfilesystementry.cpp $(PCH)
+qfilesystemengine.obj: $(CORESRC)\io\qfilesystemengine.cpp $(PCH)
+qfilesystemengine_win.obj: $(CORESRC)\io\qfilesystemengine_win.cpp $(PCH)
+qfilesystemiterator_win.obj: $(CORESRC)\io\qfilesystemiterator_win.cpp $(PCH)
+qfsfileengine.obj: $(CORESRC)\io\qfsfileengine.cpp $(PCH)
+qfsfileengine_win.obj: $(CORESRC)\io\qfsfileengine_win.cpp $(PCH)
+qfsfileengine_iterator.obj: $(CORESRC)\io\qfsfileengine_iterator.cpp $(PCH)
+qiodevice.obj: $(CORESRC)\io\qiodevice.cpp $(PCH)
+qtextstream.obj: $(CORESRC)\io\qtextstream.cpp $(PCH)
+qtemporaryfile.obj: $(CORESRC)\io\qtemporaryfile.cpp $(PCH)
+qsystemlibrary.obj: $(CORESRC)\plugin\qsystemlibrary.cpp $(PCH)
+qbitarray.obj: $(CORESRC)\tools\qbitarray.cpp $(PCH)
+qdatetime.obj: $(CORESRC)\tools\qdatetime.cpp $(PCH)
+qmap.obj: $(CORESRC)\tools\qmap.cpp $(PCH)
+qregexp.obj: $(CORESRC)\tools\qregexp.cpp $(PCH)
+qstring.obj: $(CORESRC)\tools\qstring.cpp $(PCH)
+qstringlist.obj: $(CORESRC)\tools\qstringlist.cpp $(PCH)
+qvsnprintf.obj: $(CORESRC)\tools\qvsnprintf.cpp $(PCH)
+qvariant.obj: $(CORESRC)\kernel\qvariant.cpp $(PCH)
+qsystemerror.obj: $(CORESRC)\kernel\qsystemerror.cpp $(PCH)
+qurl.obj: $(CORESRC)\io\qurl.cpp $(PCH)
+qline.obj: $(CORESRC)\tools\qline.cpp $(PCH)
+qsize.obj: $(CORESRC)\tools\qsize.cpp $(PCH)
+qpoint.obj: $(CORESRC)\tools\qpoint.cpp $(PCH)
+qrect.obj: $(CORESRC)\tools\qrect.cpp $(PCH)
+qmetatype.obj: $(CORESRC)\kernel\qmetatype.cpp $(PCH)
+qmalloc.obj: $(CORESRC)\global\qmalloc.cpp $(PCH)
+qxmlstream.obj: $(CORESRC)\xml\qxmlstream.cpp $(PCH)
+qxmlutils.obj: $(CORESRC)\xml\qxmlutils.cpp $(PCH)
+quuid.obj: $(CORESRC)\plugin\quuid.cpp $(PCH)
+qcryptographichash.obj: $(CORESRC)\tools\qcryptographichash.cpp $(PCH)
+
+{$(CONFSRC)}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(TOOLSRC)\shared\windows}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\tools}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\codecs}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\global}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\io}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\kernel}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\plugin}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
+{$(CORESRC)\xml}.cpp{}.obj::
+ $(CXX) -c $(CXXFLAGS) $<
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index fc82fe0702..3e291c2cd0 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -114,13 +114,18 @@ Configure::Configure(int& argc, char** argv)
for (i = 1; i < argc; i++)
configCmdLine += argv[ i ];
-
- // Get the path to the executable
- wchar_t module_name[MAX_PATH];
- GetModuleFileName(0, module_name, sizeof(module_name) / sizeof(wchar_t));
- QFileInfo sourcePathInfo = QString::fromWCharArray(module_name);
- sourcePath = sourcePathInfo.absolutePath();
- sourceDir = sourcePathInfo.dir();
+ if (configCmdLine.size() >= 2 && configCmdLine.at(0) == "-srcdir") {
+ sourcePath = QDir::cleanPath(configCmdLine.at(1));
+ sourceDir = QDir(sourcePath);
+ configCmdLine.erase(configCmdLine.begin(), configCmdLine.begin() + 2);
+ } else {
+ // Get the path to the executable
+ wchar_t module_name[MAX_PATH];
+ GetModuleFileName(0, module_name, sizeof(module_name) / sizeof(wchar_t));
+ QFileInfo sourcePathInfo = QString::fromWCharArray(module_name);
+ sourcePath = sourcePathInfo.absolutePath();
+ sourceDir = sourcePathInfo.dir();
+ }
buildPath = QDir::currentPath();
#if 0
const QString installPath = QString("C:\\Qt\\%1").arg(QT_VERSION_STR);
@@ -889,6 +894,9 @@ void Configure::parseCmdLine()
else if (configCmdLine.at(i) == "-internal")
dictionary[ "QMAKE_INTERNAL" ] = "yes";
+ else if (configCmdLine.at(i) == "-no-syncqt")
+ dictionary[ "SYNCQT" ] = "no";
+
else if (configCmdLine.at(i) == "-no-qmake")
dictionary[ "BUILD_QMAKE" ] = "no";
else if (configCmdLine.at(i) == "-qmake")