qt5base-lts/tools/configure/Makefile.mingw
Thiago Macieira 2d2cb6434f Move the official Qt version from qglobal.h to .qmake.conf
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>
2015-10-14 20:12:57 +00:00

129 lines
3.6 KiB
Makefile

CORESRC = $(QTSRC)src/corelib
TOOLSRC = $(QTSRC)tools
CONFSRC = $(TOOLSRC)/configure
RAW_PCH = configure_pch.h
PCH = $(RAW_PCH).gch/c++
DEFINES = -DUNICODE -DQT_NO_DATASTREAM -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_VERSION_STR=\"$(QTVERSION)\" -DQT_VERSION_MAJOR=$(QT_VERSION_MAJOR) -DQT_VERSION_MINOR=$(QT_VERSION_MINOR) -DQT_VERSION_PATCH=$(QT_VERSION_PATCH)
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 \
qarraydata.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 \
qfiledevice.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 \
qringbuffer.o \
qdebug.o \
qtextstream.o \
qlogging.o \
qtemporaryfile.o \
qstandardpaths.o \
qstandardpaths_win.o \
qsystemlibrary.o \
qbitarray.o \
qdatetime.o \
qmap.o \
qregexp.o \
qstring.o \
qstring_compat.o \
qstringlist.o \
qvsnprintf.o \
qvariant.o \
qsystemerror.o \
qmetatype.o \
qmalloc.o \
qxmlstream.o \
qxmlutils.o \
quuid.o \
registry.o
$(TARGET): $(OBJECTS)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS)
$(OBJECTS): $(PCH)
# SHELL is the full path of sh.exe, unless
# 1) it is found in the current directory
# 2) it is not found at all
# 3) it is overridden on the command line with an existing file
# ... otherwise it is always sh.exe. Specifically, SHELL from the
# environment has no effect.
#
# This check will fail if SHELL is explicitly set to a not
# sh-compatible shell. This is not a problem, because configure.bat
# will not do that.
ifeq ($(SHELL), sh.exe)
ifeq ($(wildcard "$(CURDIR)/sh.exe"), )
SH = 0
else
SH = 1
endif
else
SH = 1
endif
ifeq ($(SH), 1)
CHK_DIR_EXISTS = test -d
CHK_DIR_EXISTS_GLUE = ||
MKDIR = mkdir -p
else
CHK_DIR_EXISTS = if not exist
CHK_DIR_EXISTS_GLUE =
MKDIR = md
endif
$(PCH): $(CONFSRC)/configure_pch.h
@$(CHK_DIR_EXISTS) $(RAW_PCH).gch $(CHK_DIR_EXISTS_GLUE) $(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
# Make sure qstring_compat.obj isn't compiled with PCH enabled
qstring_compat.o: $(CORESRC)/tools/qstring_compat.cpp
$(CXX) -c $(CXXFLAGS_BARE) -o $@ $<
clean:
-rm -f *.o
-rm -rf *.gch