2d2cb6434f
It's easier to parse than qglobal.h. The objective is actually to have macros with parts of the version number, so the major or minor numbers could be used in other preprocessor macros. Change-Id: I42e7ef1a481840699a8dffff1404eda1dd5c308d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
224 lines
6.0 KiB
Makefile
224 lines
6.0 KiB
Makefile
!if "$(SOURCE_PATH)" == ""
|
|
SOURCE_PATH = ..
|
|
!endif
|
|
!if "$(BUILD_PATH)" == ""
|
|
BUILD_PATH = ..
|
|
!endif
|
|
|
|
QMKSRC = $(SOURCE_PATH)\qmake
|
|
|
|
#
|
|
# per-compiler options
|
|
#
|
|
!if "$(QMAKESPEC)" == "win32-icc"
|
|
CXX = icl
|
|
LINKER = link
|
|
CFLAGS_EXTRA = /Zc:forScope
|
|
!else
|
|
CXX = cl
|
|
LINKER = link
|
|
! if "$(QMAKESPEC)" == "win32-msvc2005"
|
|
CFLAGS_EXTRA = /Zc:wchar_t-
|
|
! elseif "$(QMAKESPEC)" == "win32-msvc2008" || "$(QMAKESPEC)" == "win32-msvc2010" || "$(QMAKESPEC)" == "win32-msvc2012" || "$(QMAKESPEC)" == "win32-msvc2013"
|
|
CFLAGS_EXTRA = /MP /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS $(CFLAGS_CRT)
|
|
! elseif "$(QMAKESPEC)" == "win32-msvc2015"
|
|
CFLAGS_EXTRA = /MP /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS /Zc:strictStrings /w44456 /w44457 /w44458 $(CFLAGS_CRT)
|
|
! else
|
|
! error Unsupported compiler for this Makefile
|
|
! endif
|
|
!endif # !win32-icc
|
|
|
|
CFLAGS_BARE = -c -Fo./ -Fdqmake.pdb \
|
|
-W3 -nologo -O1 \
|
|
$(CFLAGS_EXTRA) \
|
|
-I$(QMKSRC) -I$(QMKSRC)\library -I$(QMKSRC)\generators -I$(QMKSRC)\generators\unix -I$(QMKSRC)\generators\win32 -I$(QMKSRC)\generators\mac -I$(QMKSRC)\generators\integrity \
|
|
-I$(INC_PATH) -I$(INC_PATH)\QtCore -I$(INC_PATH)\QtCore\$(QT_VERSION) -I$(INC_PATH)\QtCore\$(QT_VERSION)\QtCore \
|
|
-I$(BUILD_PATH)\src\corelib\global -DHAVE_QCONFIG_CPP \
|
|
-I$(SOURCE_PATH)\mkspecs\$(QMAKESPEC) \
|
|
-I$(SOURCE_PATH)\tools\shared \
|
|
-DQT_VERSION_STR=\"$(QT_VERSION)\" -DQT_VERSION_MAJOR=$(QT_MAJOR_VERSION) -DQT_VERSION_MINOR=$(QT_MINOR_VERSION) -DQT_VERSION_PATCH=$(QT_PATCH_VERSION) \
|
|
-DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DPROEVALUATOR_FULL \
|
|
-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_COMPRESS \
|
|
-DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
|
|
-DUNICODE -DQT_CRYPTOGRAPHICHASH_ONLY_SHA1 -DQT_JSON_READONLY -DQT_NO_STANDARDPATHS
|
|
CFLAGS = -Yuqmake_pch.h -FIqmake_pch.h -Fpqmake_pch.pch $(CFLAGS_BARE) $(CFLAGS)
|
|
|
|
CXXFLAGS_BARE = $(CFLAGS_BARE)
|
|
CXXFLAGS = $(CFLAGS)
|
|
|
|
LFLAGS =
|
|
LIBS = ole32.lib advapi32.lib shell32.lib
|
|
LINKQMAKE = $(LINKER) $(LFLAGS) -OUT:qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
|
|
ADDCLEAN = qmake.pdb qmake.ilk
|
|
|
|
#qmake code
|
|
OBJS = project.obj main.obj ioutils.obj proitems.obj qmakevfs.obj \
|
|
qmakeglobals.obj qmakeparser.obj qmakeevaluator.obj qmakebuiltins.obj \
|
|
makefile.obj unixmake.obj unixmake2.obj mingw_make.obj \
|
|
option.obj winmakefile.obj projectgenerator.obj property.obj meta.obj \
|
|
makefiledeps.obj metamakefile.obj xmloutput.obj \
|
|
msvc_nmake.obj msvc_vcproj.obj msvc_vcxproj.obj \
|
|
msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj \
|
|
cesdkhandler.obj
|
|
|
|
#qt code
|
|
QTOBJS= \
|
|
qbitarray.obj \
|
|
qbuffer.obj \
|
|
qcryptographichash.obj \
|
|
qfilesystementry.obj \
|
|
qfilesystemengine.obj \
|
|
qfilesystemengine_win.obj \
|
|
qfilesystemiterator_win.obj \
|
|
qfsfileengine.obj \
|
|
qfsfileengine_iterator.obj \
|
|
qarraydata.obj \
|
|
qbytearray.obj \
|
|
qvsnprintf.obj \
|
|
qbytearraymatcher.obj \
|
|
qdatetime.obj \
|
|
qdir.obj \
|
|
qdiriterator.obj \
|
|
qfiledevice.obj \
|
|
qfile.obj \
|
|
qtemporaryfile.obj \
|
|
qabstractfileengine.obj \
|
|
qfsfileengine_win.obj \
|
|
qsystemlibrary.obj \
|
|
qfileinfo.obj \
|
|
qglobal.obj \
|
|
qhash.obj \
|
|
qiodevice.obj \
|
|
qringbuffer.obj \
|
|
qdebug.obj \
|
|
qlist.obj \
|
|
qlinkedlist.obj \
|
|
qlocale.obj \
|
|
qlocale_tools.obj \
|
|
qlocale_win.obj \
|
|
qmalloc.obj \
|
|
qmap.obj \
|
|
qregexp.obj \
|
|
qtextcodec.obj \
|
|
qutfcodec.obj \
|
|
qstring.obj \
|
|
qstring_compat.obj \
|
|
qstringlist.obj \
|
|
qstringbuilder.obj \
|
|
qsystemerror.obj \
|
|
qtextstream.obj \
|
|
qdatastream.obj \
|
|
quuid.obj \
|
|
qvector.obj \
|
|
qsettings.obj \
|
|
qlibraryinfo.obj \
|
|
qvariant.obj \
|
|
qsettings_win.obj \
|
|
qmetatype.obj \
|
|
qxmlstream.obj \
|
|
qxmlutils.obj \
|
|
qnumeric.obj \
|
|
qlogging.obj \
|
|
qjson.obj \
|
|
qjsondocument.obj \
|
|
qjsonparser.obj \
|
|
qjsonarray.obj \
|
|
qjsonobject.obj \
|
|
qjsonvalue.obj
|
|
|
|
first all: qmake.exe
|
|
|
|
qmake.exe: $(OBJS) $(QTOBJS)
|
|
$(LINKQMAKE) qmake_pch.obj
|
|
-copy qmake.exe $(BUILD_PATH)\bin\qmake.exe
|
|
|
|
clean::
|
|
-del $(QTOBJS)
|
|
-del $(OBJS)
|
|
-del qmake_pch.obj
|
|
-del qmake_pch.pch
|
|
-del qmake.pdb
|
|
-del qmake.ilk
|
|
-del qmake.tds
|
|
|
|
distclean:: clean
|
|
-del qmake.exe
|
|
-del $(BUILD_PATH)\bin\qmake.exe
|
|
-del Makefile
|
|
|
|
.c.obj:
|
|
$(CXX) $(CFLAGS) $<
|
|
|
|
.cpp.obj:
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
.cc.obj:
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
.cxx.obj:
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
$(OBJS): qmake_pch.obj
|
|
|
|
$(QTOBJS): qmake_pch.obj
|
|
|
|
qlibraryinfo.obj: $(BUILD_PATH)\src\corelib\global\qconfig.cpp
|
|
|
|
qmake_pch.obj:
|
|
$(CXX) $(CXXFLAGS_BARE) -c -Yc -Fpqmake_pch.pch -TP $(QMKSRC)\qmake_pch.h
|
|
|
|
{$(SOURCE_PATH)\qmake\library}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake\generators\mac}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake\generators\integrity}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake\generators\unix}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake\generators\win32}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake\generators}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\qmake}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\3rdparty\md5}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\codecs}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\global}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\io}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\kernel}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\plugin}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\tools}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\xml}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\src\corelib\json}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
{$(SOURCE_PATH)\tools\shared\windows}.cpp{}.obj::
|
|
$(CXX) $(CXXFLAGS) $<
|
|
|
|
# Make sure qstring_compat.obj isn't compiled with PCH enabled
|
|
qstring_compat.obj: $(SOURCE_PATH)\src\corelib\tools\qstring_compat.cpp
|
|
$(CXX) -c $(CXXFLAGS_BARE) $(SOURCE_PATH)\src\corelib\tools\qstring_compat.cpp
|