Remove qmake-related code from configure
This leaves a very simple script that delegates the heavy configure work to a CMake script. This also removes the Makefile templates that were used for bootstrapping qmake. Task-number: QTBUG-88742 Change-Id: Iab9c477e0bb611d680bda2cf8aaa7ad88356a8d1 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
This commit is contained in:
parent
ec7eb1eab1
commit
31396f0aff
718
configure
vendored
718
configure
vendored
@ -32,67 +32,12 @@
|
||||
# script initialization
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# the name of this script
|
||||
relconf=`basename $0`
|
||||
# the directory of this script is the "source tree"
|
||||
relpath=`dirname $0`
|
||||
relpath=`(cd "$relpath"; /bin/pwd)`
|
||||
# the current directory is the "build tree" or "object tree"
|
||||
outpath=`/bin/pwd`
|
||||
|
||||
WHICH="which"
|
||||
|
||||
PERL=
|
||||
findPerl()
|
||||
{
|
||||
PERL=`$WHICH perl 2>/dev/null`
|
||||
}
|
||||
|
||||
# find out which awk we want to use, prefer gawk, then nawk, then regular awk
|
||||
AWK=
|
||||
findAwk()
|
||||
{
|
||||
for e in gawk nawk awk; do
|
||||
if "$WHICH" $e >/dev/null 2>&1 && ( $e -f /dev/null /dev/null ) >/dev/null 2>&1; then
|
||||
AWK=$e
|
||||
break
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# find a make command
|
||||
findMake()
|
||||
{
|
||||
if [ -z "$MAKE" ]; then
|
||||
MAKE=
|
||||
for mk in gmake make; do
|
||||
if "$WHICH" $mk >/dev/null 2>&1; then
|
||||
MAKE=`"$WHICH" $mk`
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ -z "$MAKE" ]; then
|
||||
echo >&2 "You don't seem to have 'make' or 'gmake' in your PATH."
|
||||
echo >&2 "Cannot proceed."
|
||||
exit 1
|
||||
fi
|
||||
# export MAKE, we need it later in the config.tests
|
||||
export MAKE
|
||||
fi
|
||||
}
|
||||
|
||||
# make sure qmake is not confused by these. recursion via Makefiles would
|
||||
# be still affected, so just unsetting them here is not an option.
|
||||
checkQMakeEnv()
|
||||
{
|
||||
if [ -n "$QMAKESPEC" ] || [ -n "$XQMAKESPEC" ] || \
|
||||
[ -n "$QMAKEPATH" ] || [ -n "$QMAKEFEATURES" ]; then
|
||||
echo >&2 "Please make sure to unset the QMAKESPEC, XQMAKESPEC, QMAKEPATH,"
|
||||
echo >&2 "and QMAKEFEATURES environment variables prior to building Qt."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# do this early so we don't store it in config.status
|
||||
CFG_TOPLEVEL=
|
||||
outpathPrefix=
|
||||
@ -113,8 +58,7 @@ checkTopLevelBuild()
|
||||
}
|
||||
|
||||
OPT_CMDLINE= # expanded version for the script
|
||||
QMAKE_CMDLINE= # verbatim version for qmake call
|
||||
getOptAndQMakeCmdLines()
|
||||
determineOptFilePath()
|
||||
{
|
||||
set -f # suppress globbing in for loop
|
||||
SAVED_IFS=$IFS
|
||||
@ -144,8 +88,6 @@ $a"
|
||||
$i"
|
||||
;;
|
||||
esac
|
||||
QMAKE_CMDLINE="$QMAKE_CMDLINE
|
||||
$i"
|
||||
done
|
||||
set --
|
||||
for i in $OPT_CMDLINE; do
|
||||
@ -155,256 +97,11 @@ set +f
|
||||
IFS=$SAVED_IFS
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# utility functions
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# Helper function for getQMakeConf. It parses include statements in
|
||||
# qmake.conf and prints out the expanded file
|
||||
expandQMakeConf()
|
||||
{
|
||||
while read line; do case "$line" in
|
||||
include*)
|
||||
inc_file=`echo "$line" | sed -n -e '/^include.*(.*)/s/include.*(\(.*\)).*$/\1/p'`
|
||||
current_dir=`dirname "$1"`
|
||||
conf_file="$current_dir/$inc_file"
|
||||
if [ ! -f "$conf_file" ]; then
|
||||
echo "WARNING: Unable to find file $conf_file" >&2
|
||||
continue
|
||||
fi
|
||||
expandQMakeConf "$conf_file"
|
||||
;;
|
||||
*)
|
||||
echo "$line"
|
||||
;;
|
||||
esac; done < "$1"
|
||||
}
|
||||
|
||||
extractQMakeVariables()
|
||||
{
|
||||
LC_ALL=C $AWK '
|
||||
BEGIN {
|
||||
values["LITERAL_WHITESPACE"] = " "
|
||||
values["LITERAL_DOLLAR"] = "$"
|
||||
}
|
||||
/^[_A-Z0-9.]+[ \t]*\+?=/ {
|
||||
valStart = index($0, "=") + 1
|
||||
|
||||
append = 0
|
||||
if (substr($0, valStart - 2, 1) == "+") {
|
||||
append = 1
|
||||
}
|
||||
|
||||
variable = substr($0, 0, valStart - 2 - append)
|
||||
value = substr($0, valStart)
|
||||
gsub("[ \t]+", "", variable)
|
||||
gsub("^[ \t]+", "", value)
|
||||
gsub("[ \t]+$", "", value)
|
||||
|
||||
ovalue = ""
|
||||
while (match(value, /\$\$(\{[_A-Z0-9.]+\}|[_A-Z0-9.]+)/)) {
|
||||
ovalue = ovalue substr(value, 1, RSTART - 1)
|
||||
var = substr(value, RSTART + 2, RLENGTH - 2)
|
||||
value = substr(value, RSTART + RLENGTH)
|
||||
if (var ~ /^\{/) {
|
||||
var = substr(var, 2, length(var) - 2)
|
||||
}
|
||||
ovalue = ovalue values[var]
|
||||
}
|
||||
value = ovalue value
|
||||
|
||||
ovalue = ""
|
||||
while (match(value, /\$\$system\(("[^"]*"|[^)]*)\)/)) {
|
||||
ovalue = ovalue substr(value, 1, RSTART - 1)
|
||||
cmd = substr(value, RSTART + 9, RLENGTH - 10)
|
||||
gsub(/^"|"$/, "", cmd)
|
||||
value = substr(value, RSTART + RLENGTH)
|
||||
while ((cmd | getline line) > 0) {
|
||||
ovalue = ovalue line
|
||||
}
|
||||
close(cmd)
|
||||
}
|
||||
value = ovalue value
|
||||
|
||||
combinedValue = values[variable]
|
||||
if (append == 1 && length(combinedValue) > 0) {
|
||||
combinedValue = combinedValue " " value
|
||||
} else {
|
||||
combinedValue = value
|
||||
}
|
||||
values[variable] = combinedValue
|
||||
}
|
||||
END {
|
||||
for (var in values) {
|
||||
print var "=" values[var]
|
||||
}
|
||||
}
|
||||
'
|
||||
}
|
||||
|
||||
getSingleQMakeVariable()
|
||||
{
|
||||
echo "$2" | $AWK "/^($1)=/ { print substr(\$0, index(\$0, \"=\") + 1) }"
|
||||
}
|
||||
|
||||
macSDKify()
|
||||
{
|
||||
# Normally we take care of sysrootifying in sdk.prf, but configure extracts some
|
||||
# values before qmake is even built, so we have to duplicate the logic here.
|
||||
|
||||
sdk=$(getSingleQMakeVariable "QMAKE_MAC_SDK" "$1")
|
||||
if [ -z "$sdk" ]; then echo "QMAKE_MAC_SDK must be set when building on Mac" >&2; exit 1; fi
|
||||
sysroot=$(/usr/bin/xcrun --sdk $sdk --show-sdk-path 2>/dev/null)
|
||||
if [ -z "$sysroot" ]; then echo "Failed to resolve SDK path for '$sdk'" >&2; exit 1; fi
|
||||
|
||||
case "$sdk" in
|
||||
macosx*)
|
||||
version_min_flag="-mmacosx-version-min=$(getSingleQMakeVariable QMAKE_MACOSX_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
iphoneos*)
|
||||
version_min_flag="-miphoneos-version-min=$(getSingleQMakeVariable QMAKE_IOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
iphonesimulator*)
|
||||
version_min_flag="-mios-simulator-version-min=$(getSingleQMakeVariable QMAKE_IOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
appletvos*)
|
||||
version_min_flag="-mappletvos-version-min=$(getSingleQMakeVariable QMAKE_TVOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
appletvsimulator*)
|
||||
version_min_flag="-mtvos-simulator-version-min=$(getSingleQMakeVariable QMAKE_TVOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
watchos*)
|
||||
version_min_flag="-mwatchos-version-min=$(getSingleQMakeVariable QMAKE_WATCHOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
watchsimulator*)
|
||||
version_min_flag="-mwatchos-simulator-version-min=$(getSingleQMakeVariable QMAKE_WATCHOS_DEPLOYMENT_TARGET "$1")"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
hasCFlags=
|
||||
echo "$1" | while read line; do
|
||||
case "$line" in
|
||||
QMAKE_CC=*|QMAKE_CXX=*|QMAKE_FIX_RPATH=*|QMAKE_AR=*|QMAKE_RANLIB=*|QMAKE_LINK=*|QMAKE_LINK_SHLIB=*)
|
||||
# Prefix tool with toolchain path
|
||||
var=$(echo "$line" | cut -d '=' -f 1)
|
||||
val=$(echo "$line" | cut -d '=' -f 2-)
|
||||
sdk_val=$(/usr/bin/xcrun -sdk $sdk -find $(echo $val | cut -d ' ' -f 1))
|
||||
val=$(echo $sdk_val $(echo $val | cut -s -d ' ' -f 2-))
|
||||
echo "$var=$val"
|
||||
;;
|
||||
QMAKE_CFLAGS=*)
|
||||
echo "$line -isysroot $sysroot $version_min_flag"
|
||||
hasCFlags="true";
|
||||
;;
|
||||
QMAKE_CXXFLAGS=*|QMAKE_LFLAGS=*)
|
||||
echo "$line -isysroot $sysroot $version_min_flag"
|
||||
;;
|
||||
*)
|
||||
echo "$line"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -z "$hasCFlags" ]; then
|
||||
echo "QMAKE_CFLAGS = -isysroot $sysroot $version_min_flag";
|
||||
fi
|
||||
}
|
||||
|
||||
# relies on $QMAKESPEC being set correctly. parses include statements in
|
||||
# qmake.conf and prints out the expanded file
|
||||
getQMakeConf()
|
||||
{
|
||||
if [ -z "$specvals" ]; then
|
||||
specvals=`expandQMakeConf "$QMAKESPEC/qmake.conf" | extractQMakeVariables`
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then specvals=$(macSDKify "$specvals"); fi
|
||||
fi
|
||||
getSingleQMakeVariable "$1" "$specvals"
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# operating system detection
|
||||
#-------------------------------------------------------------------------------
|
||||
detectOperatingSystem()
|
||||
{
|
||||
# need that throughout the script
|
||||
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
|
||||
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
|
||||
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
|
||||
|
||||
BUILD_ON_MAC=no
|
||||
if [ -d /System/Library/Frameworks/Cocoa.framework ]; then
|
||||
BUILD_ON_MAC=yes
|
||||
fi
|
||||
if [ "$OSTYPE" = "msys" ]; then
|
||||
relpath=`(cd "$relpath"; pwd -W)`
|
||||
outpath=`pwd -W`
|
||||
fi
|
||||
}
|
||||
#-------------------------------------------------------------------------------
|
||||
# Verify Xcode installation on Mac OS
|
||||
#-------------------------------------------------------------------------------
|
||||
maybeVerifyXcode()
|
||||
{
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
if ! /usr/bin/xcode-select --print-path >/dev/null 2>&1; then
|
||||
echo >&2
|
||||
echo " No Xcode selected. Please install Xcode via the App Store, " >&2
|
||||
echo " or the command line developer tools via xcode-select --install, " >&2
|
||||
echo " and use xcode-select --switch to choose the right installation. " >&2
|
||||
echo " See the xcode-select man page for more information." >&2
|
||||
echo >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
# In the else case we are probably using a Command Line Tools installation
|
||||
if /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1; then
|
||||
if ! /usr/bin/xcrun xcodebuild -license check 2>/dev/null; then
|
||||
echo >&2
|
||||
echo " Xcode setup not complete. You need to confirm the license" >&2
|
||||
echo " agreement by running 'sudo xcrun xcodebuild -license accept'." >&2
|
||||
echo >&2
|
||||
exit 2
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
}
|
||||
#-----------------------------------------------------------------------------
|
||||
# Qt version detection
|
||||
#-----------------------------------------------------------------------------
|
||||
QT_VERSION=
|
||||
QT_MAJOR_VERSION=
|
||||
QT_MINOR_VERSION=0
|
||||
QT_PATCH_VERSION=0
|
||||
detectQtVersion()
|
||||
{
|
||||
eval `sed -n -e 's/^MODULE_VERSION = \(\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*\)$/QT_VERSION=\1\
|
||||
QT_MAJOR_VERSION=\2\
|
||||
QT_MINOR_VERSION=\3\
|
||||
QT_PATCH_VERSION=\4/p' < "$relpath"/.qmake.conf`
|
||||
if [ -z "$QT_MAJOR_VERSION" ]; then
|
||||
echo "Cannot process version from .qmake.conf"
|
||||
echo "Cannot proceed."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
#-------------------------------------------------------------------------------
|
||||
# initialize variables
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
# QTDIR may be set and point to an old or system-wide Qt installation
|
||||
unset QTDIR
|
||||
|
||||
# initalize internal variables
|
||||
CFG_RELEASE_TOOLS=no
|
||||
PLATFORM=
|
||||
OPT_SHADOW=maybe
|
||||
OPT_VERBOSE=no
|
||||
OPT_HELP=
|
||||
CFG_SILENT=no
|
||||
CFG_DEV=no
|
||||
BUILD_WITH_CMAKE=yes
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# parse command line arguments
|
||||
@ -524,17 +221,6 @@ while [ "$#" -gt 0 ]; do
|
||||
external-hostbindir)
|
||||
CFG_HOST_QT_TOOLS_PATH="$VAL"
|
||||
;;
|
||||
platform)
|
||||
PLATFORM="$VAL"
|
||||
;;
|
||||
optimized-qmake|optimized-tools)
|
||||
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
|
||||
CFG_RELEASE_TOOLS="$VAL"
|
||||
fi
|
||||
;;
|
||||
developer-build)
|
||||
CFG_DEV="yes"
|
||||
;;
|
||||
h|help)
|
||||
if [ "$VAL" = "yes" ]; then
|
||||
OPT_HELP="$VAL"
|
||||
@ -542,24 +228,12 @@ while [ "$#" -gt 0 ]; do
|
||||
UNKNOWN_OPT=yes
|
||||
fi
|
||||
;;
|
||||
v|verbose)
|
||||
if [ "$VAL" = "yes" ]; then
|
||||
OPT_VERBOSE=yes
|
||||
elif [ "$VAL" = "no" ]; then
|
||||
OPT_VERBOSE=no
|
||||
else
|
||||
UNKNOWN_OPT=yes
|
||||
fi
|
||||
;;
|
||||
silent)
|
||||
# need to keep this here, to ensure qmake is built silently
|
||||
CFG_SILENT="$VAL"
|
||||
;;
|
||||
cmake)
|
||||
BUILD_WITH_CMAKE=yes
|
||||
# Ignore. Kept to keep build scripts working. Consider removal in Qt 6.2.
|
||||
;;
|
||||
qmake)
|
||||
BUILD_WITH_CMAKE=no
|
||||
echo >&2 "ERROR: You cannot configure Qt 6 with qmake anymore."
|
||||
ERROR=yes
|
||||
;;
|
||||
redo)
|
||||
if [ -f ${outpathPrefix}config.opt ]; then
|
||||
@ -578,6 +252,7 @@ while [ "$#" -gt 0 ]; do
|
||||
done
|
||||
[ "x$ERROR" = "xyes" ] && exit 1
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# help - interactive parts of the script _after_ this section please
|
||||
#-------------------------------------------------------------------------------
|
||||
@ -598,372 +273,27 @@ if [ "$OPT_HELP" = "yes" ]; then
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
#-------------------------------------------------------------------------------
|
||||
# platform detection
|
||||
#-------------------------------------------------------------------------------
|
||||
PLATFORM_NOTES=
|
||||
detectPlatform()
|
||||
{
|
||||
if [ -z "$PLATFORM" ]; then
|
||||
case "$UNAME_SYSTEM:$UNAME_RELEASE" in
|
||||
Darwin:*)
|
||||
PLATFORM=macx-clang
|
||||
;;
|
||||
AIX:*)
|
||||
#PLATFORM=aix-g++
|
||||
PLATFORM=aix-g++-64
|
||||
PLATFORM_NOTES="AIX: aix-g++ aix-g++-64"
|
||||
;;
|
||||
GNU:*)
|
||||
PLATFORM=hurd-g++
|
||||
;;
|
||||
FreeBSD:*)
|
||||
if [ "$(uname -r | cut -d. -f1)" -ge 10 ]; then
|
||||
PLATFORM=freebsd-clang
|
||||
PLATFORM_NOTES="FreeBSD: freebsd-g++"
|
||||
else
|
||||
PLATFORM=freebsd-g++
|
||||
PLATFORM_NOTES="FreeBSD: freebsd-clang"
|
||||
fi
|
||||
;;
|
||||
OpenBSD:*)
|
||||
PLATFORM=openbsd-g++
|
||||
;;
|
||||
NetBSD:*)
|
||||
PLATFORM=netbsd-g++
|
||||
;;
|
||||
HP-UX:*)
|
||||
case "$UNAME_MACHINE" in
|
||||
ia64)
|
||||
PLATFORM=hpuxi-g++-64
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
Linux:*)
|
||||
PLATFORM=linux-g++
|
||||
PLATFORM_NOTES="Linux: linux-clang linux-icc"
|
||||
;;
|
||||
SunOS:5*)
|
||||
#PLATFORM=solaris-g++-64
|
||||
PLATFORM=solaris-cc
|
||||
#PLATFORM=solaris-cc64
|
||||
PLATFORM_NOTES="Solaris: solaris-g++-64 solaris-cc-64"
|
||||
;;
|
||||
CYGWIN*:*)
|
||||
PLATFORM=cygwin-g++
|
||||
;;
|
||||
LynxOS*:*)
|
||||
PLATFORM=lynxos-g++
|
||||
;;
|
||||
QNX:*)
|
||||
PLATFORM=unsupported/qnx-g++
|
||||
;;
|
||||
*)
|
||||
echo >&2
|
||||
echo " The build script does not currently recognize all" >&2
|
||||
echo " platforms supported by Qt." >&2
|
||||
echo " Rerun this script with a -platform option listed to" >&2
|
||||
echo " set the system/compiler combination you use." >&2
|
||||
echo >&2
|
||||
exit 2
|
||||
esac
|
||||
fi
|
||||
echo "$PLATFORM_NOTES" > "${outpathPrefix}.config.notes"
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# command line and environment validation
|
||||
#-------------------------------------------------------------------------------
|
||||
validateEnv()
|
||||
{
|
||||
if [ -d "$PLATFORM" ]; then
|
||||
QMAKESPEC="$PLATFORM"
|
||||
else
|
||||
QMAKESPEC="$relpath/mkspecs/${PLATFORM}"
|
||||
fi
|
||||
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
if [ `basename $QMAKESPEC` = "macx-xcode" ]; then
|
||||
echo >&2
|
||||
echo " Platform 'macx-xcode' should not be used when building Qt/Mac." >&2
|
||||
echo " Please build Qt/Mac with 'macx-clang' or 'macx-g++', then use" >&2
|
||||
echo " the 'macx-xcode' spec for your application, and it will link to" >&2
|
||||
echo " the Qt/Mac build using the settings of the original mkspec." >&2
|
||||
echo >&2
|
||||
exit 2
|
||||
fi
|
||||
fi
|
||||
|
||||
# check specified platforms are supported
|
||||
if [ '!' -d "$QMAKESPEC" ]; then
|
||||
echo
|
||||
echo " The specified system/compiler is not supported:"
|
||||
echo
|
||||
echo " $QMAKESPEC"
|
||||
echo
|
||||
echo " Please see the README file for a complete list."
|
||||
echo
|
||||
exit 2
|
||||
fi
|
||||
}
|
||||
#-------------------------------------------------------------------------------
|
||||
# build tree initialization
|
||||
#-------------------------------------------------------------------------------
|
||||
initBuildTree()
|
||||
{
|
||||
# is this a shadow build?
|
||||
if [ "$OPT_SHADOW" = "maybe" ]; then
|
||||
OPT_SHADOW=no
|
||||
if [ "$relpath" != "$outpath" ] && [ '!' -f "$outpath/configure" ]; then
|
||||
if [ -h "$outpath" ]; then
|
||||
[ "$relpath" -ef "$outpath" ] || OPT_SHADOW=yes
|
||||
else
|
||||
OPT_SHADOW=yes
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if [ "$OPT_SHADOW" = "yes" ]; then
|
||||
if [ -f "$relpath/.qmake.cache" -o -f "$relpath/src/corelib/global/qconfig.h" -o -f "$relpath/src/corelib/global/qconfig.cpp" ]; then
|
||||
echo >&2 "You cannot make a shadow build from a source tree containing a previous build."
|
||||
echo >&2 "Cannot proceed."
|
||||
exit 1
|
||||
fi
|
||||
[ "$OPT_VERBOSE" = "yes" ] && echo "Performing shadow build..."
|
||||
fi
|
||||
|
||||
if [ "$OPT_SHADOW" = "yes" ]; then
|
||||
echo "Preparing build tree..."
|
||||
|
||||
[ -d "$outpath/bin" ] || mkdir -p "$outpath/bin"
|
||||
|
||||
mkdir -p "$outpath/mkspecs"
|
||||
fi
|
||||
}
|
||||
|
||||
# $1: input variable name (awk regexp)
|
||||
# $2: optional output variable name
|
||||
# $3: optional value transformation (sed command)
|
||||
# relies on $QMAKESPEC, $COMPILER_CONF and $mkfile being set correctly, as the latter
|
||||
# is where the resulting variable is written to
|
||||
setBootstrapVariable()
|
||||
{
|
||||
getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile"
|
||||
}
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# build qmake
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
buildQMake()
|
||||
{
|
||||
# symlink includes
|
||||
if [ -e "$relpath/.git" ]; then
|
||||
if [ -z "$PERL" ]; then
|
||||
echo
|
||||
echo "You need perl in your PATH to make a build from GIT."
|
||||
echo "Cannot proceed."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
"$relpath/bin/syncqt.pl" -version $QT_VERSION -minimal -module QtCore "$relpath" || exit 1
|
||||
fi
|
||||
# build qmake
|
||||
echo "Creating qmake..."
|
||||
mkdir -p "$outpath/qmake" || exit
|
||||
|
||||
in_mkfile=$relpath/qmake/Makefile.unix
|
||||
mkfile=$outpath/qmake/Makefile
|
||||
if [ -f "$mkfile" ]; then
|
||||
[ "$CFG_DEV" = "yes" ] && "$WHICH" chflags >/dev/null 2>&1 && chflags nouchg "$mkfile"
|
||||
rm -f "$mkfile"
|
||||
fi
|
||||
|
||||
echo "########################################################################" > "$mkfile"
|
||||
echo "## This file was autogenerated by configure, all changes will be lost ##" >> "$mkfile"
|
||||
echo "########################################################################" >> "$mkfile"
|
||||
EXTRA_CXXFLAGS="\$(QMAKE_CXXFLAGS) \$(QMAKE_CXXFLAGS_CXX1Z) \$(QMAKE_CXXFLAGS_SPLIT_SECTIONS)"
|
||||
EXTRA_LFLAGS="\$(QMAKE_LFLAGS) \$(QMAKE_LFLAGS_GCSECTIONS)"
|
||||
|
||||
[ "$CFG_SILENT" = "yes" ] && CC_TRANSFORM='s,^,\@,' || CC_TRANSFORM=
|
||||
setBootstrapVariable QMAKE_CC CC "$CC_TRANSFORM"
|
||||
setBootstrapVariable QMAKE_CXX CXX "$CC_TRANSFORM"
|
||||
setBootstrapVariable QMAKE_CXXFLAGS
|
||||
setBootstrapVariable QMAKE_CFLAGS
|
||||
setBootstrapVariable QMAKE_CXXFLAGS_CXX1Z
|
||||
setBootstrapVariable QMAKE_CXXFLAGS_SPLIT_SECTIONS
|
||||
setBootstrapVariable QMAKE_LFLAGS
|
||||
setBootstrapVariable QMAKE_LFLAGS_GCSECTIONS
|
||||
|
||||
if [ "$CFG_DEBUG" = "no" ] || [ "$CFG_RELEASE_TOOLS" = "yes" ]; then
|
||||
setBootstrapVariable QMAKE_CXXFLAGS_RELEASE
|
||||
EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_RELEASE)"
|
||||
else
|
||||
setBootstrapVariable QMAKE_CXXFLAGS_DEBUG
|
||||
EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_DEBUG)"
|
||||
fi
|
||||
|
||||
adjrelpath=`echo "$relpath" | sed 's/ /\\\\\\\\ /g'`
|
||||
adjoutpath=`echo "$outpath" | sed 's/ /\\\\\\\\ /g'`
|
||||
adjqmakespec=`echo "$QMAKESPEC" | sed 's/ /\\\\\\\\ /g'`
|
||||
|
||||
echo "BUILD_PATH = .." >> "$mkfile"
|
||||
echo "SOURCE_PATH = $adjrelpath" >> "$mkfile"
|
||||
if [ -e "$relpath/.git" ]; then
|
||||
echo 'INC_PATH = $(BUILD_PATH)/include' >> "$mkfile"
|
||||
else
|
||||
echo 'INC_PATH = $(SOURCE_PATH)/include' >> "$mkfile"
|
||||
fi
|
||||
echo "QMAKESPEC = $adjqmakespec" >> "$mkfile"
|
||||
echo "QT_VERSION = $QT_VERSION" >> "$mkfile"
|
||||
echo "QT_MAJOR_VERSION = $QT_MAJOR_VERSION" >> "$mkfile"
|
||||
echo "QT_MINOR_VERSION = $QT_MINOR_VERSION" >> "$mkfile"
|
||||
echo "QT_PATCH_VERSION = $QT_PATCH_VERSION" >> "$mkfile"
|
||||
echo "CONFIG_CXXFLAGS = $EXTRA_CXXFLAGS" >> "$mkfile"
|
||||
echo "CONFIG_CFLAGS = \$(QMAKE_CFLAGS)" >> "$mkfile"
|
||||
echo "CONFIG_LFLAGS = $EXTRA_LFLAGS" >> "$mkfile"
|
||||
echo "RM_F = rm -f" >> "$mkfile"
|
||||
echo "RM_RF = rm -rf" >> "$mkfile"
|
||||
|
||||
case `basename "$PLATFORM"` in
|
||||
win32-*g++*)
|
||||
cat "$in_mkfile.win32" >> "$mkfile"
|
||||
;;
|
||||
*)
|
||||
cat "$in_mkfile.unix" >> "$mkfile"
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
cat "$in_mkfile.macos" >> "$mkfile"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
echo >>"$mkfile"
|
||||
|
||||
if [ "$BUILD_ON_MAC" = "yes" ]; then
|
||||
echo "EXTRA_CXXFLAGS += -MMD" >> "$mkfile"
|
||||
cat "$in_mkfile" >> "$mkfile"
|
||||
echo "-include \$(notdir \$(DEPEND_SRC:%.cpp=%.d))" >> "$mkfile"
|
||||
else
|
||||
cat "$in_mkfile" >> "$mkfile"
|
||||
if "$WHICH" makedepend >/dev/null 2>&1 && grep 'depend:' "$mkfile" >/dev/null 2>&1; then
|
||||
(cd "$outpath/qmake" && "$MAKE" -f "$mkfile" depend) >/dev/null 2>&1
|
||||
sed 's,^.*/\([^/]*.o\):,\1:,g' "$mkfile" >"$mkfile.tmp"
|
||||
sed "s,$outpath,$adjoutpath,g" "$mkfile.tmp" >"$mkfile"
|
||||
rm "$mkfile.tmp"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$OPT_VERBOSE" = yes ]; then
|
||||
# Show the output of make
|
||||
(cd "$outpath/qmake"; "$MAKE") || exit 2
|
||||
else
|
||||
# Hide the output of make
|
||||
# Use bash to print dots, if we have it, and stdout is a tty.
|
||||
if test -t 1 && $WHICH bash > /dev/null 2>/dev/null; then
|
||||
bash -c 'set -o pipefail
|
||||
cd "$0/qmake"; "$1" | while read line; do
|
||||
builtin echo -n .
|
||||
done' "$outpath" "$MAKE" || exit 2
|
||||
else
|
||||
(cd "$outpath/qmake"; "$MAKE" -s) || exit 2
|
||||
fi
|
||||
echo "Done."
|
||||
fi
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# create a qt.conf for the Qt build tree itself
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
createQtConf()
|
||||
{
|
||||
# Note that this file is just sufficient to boot configure, by which it is
|
||||
# replaced in-place with a version which is suitable for building all of Qt.
|
||||
QTCONFFILE="$outpath/bin/qt.conf"
|
||||
cat > "$QTCONFFILE" <<EOF
|
||||
[EffectivePaths]
|
||||
Prefix=..
|
||||
[Paths]
|
||||
TargetSpec=dummy
|
||||
HostSpec=$PLATFORM
|
||||
EOF
|
||||
if [ x"$relpath" != x"$outpath" ]; then
|
||||
cat >> "$QTCONFFILE" <<EOF
|
||||
[EffectiveSourcePaths]
|
||||
Prefix=$relpath
|
||||
EOF
|
||||
fi
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# configure and build top-level makefile
|
||||
#-------------------------------------------------------------------------------
|
||||
createToplevelMakefile()
|
||||
{
|
||||
# recreate command line for qmake
|
||||
set -f
|
||||
SAVED_IFS=$IFS
|
||||
IFS='
|
||||
'
|
||||
for i in $QMAKE_CMDLINE; do
|
||||
set -- "$@" "$i"
|
||||
done
|
||||
set +f
|
||||
IFS=$SAVED_IFS
|
||||
|
||||
if [ -n "$CFG_TOPLEVEL" ]; then
|
||||
cd ..
|
||||
fi
|
||||
|
||||
if [ -n "$CFG_HOST_QT_TOOLS_PATH" ]; then
|
||||
"$CFG_HOST_QT_TOOLS_PATH/qmake" -qtconf "$QTCONFFILE" "$relpathMangled" -- "$@"
|
||||
else
|
||||
"$outpath/bin/qmake" "$relpathMangled" -- "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
printQmakeBuildErrorAndExit()
|
||||
{
|
||||
echo >&2 "ERROR: You cannot configure Qt 6 with qmake anymore. Please configure with -cmake instead."
|
||||
exit 1
|
||||
}
|
||||
|
||||
checkTopLevelBuild "$@"
|
||||
parseCommandline "$@"
|
||||
handleHelp
|
||||
if [ "$BUILD_WITH_CMAKE" = "yes" ]; then
|
||||
getOptAndQMakeCmdLines "$@"
|
||||
optfilename=config.opt
|
||||
if [ -z "$optfile" ]; then # only write optfile if not currently redoing
|
||||
optfilepath=${outpathPrefix}${optfilename}
|
||||
> "$optfilepath"
|
||||
for arg in "$@"; do
|
||||
if [ "$arg" = "-top-level" ]; then
|
||||
continue
|
||||
fi
|
||||
echo $arg >> "$optfilepath"
|
||||
done
|
||||
fi
|
||||
|
||||
top_level_arg=
|
||||
if [ -n "$CFG_TOPLEVEL" ]; then
|
||||
top_level_arg=-DTOP_LEVEL=TRUE
|
||||
cd ..
|
||||
fi
|
||||
|
||||
cmake "-DOPTFILE=$optfilename" $top_level_arg -P "$relpath/cmake/QtProcessConfigureArgs.cmake"
|
||||
else
|
||||
printQmakeBuildErrorAndExit
|
||||
findPerl
|
||||
findAwk
|
||||
findMake
|
||||
checkQMakeEnv
|
||||
getOptAndQMakeCmdLines "$@"
|
||||
detectOperatingSystem
|
||||
maybeVerifyXcode
|
||||
detectQtVersion
|
||||
detectPlatform
|
||||
validateEnv
|
||||
initBuildTree
|
||||
buildQMake
|
||||
createQtConf
|
||||
createToplevelMakefile
|
||||
determineOptFilePath "$@"
|
||||
optfilename=config.opt
|
||||
if [ -z "$optfile" ]; then # only write optfile if not currently redoing
|
||||
optfilepath=${outpathPrefix}${optfilename}
|
||||
> "$optfilepath"
|
||||
for arg in "$@"; do
|
||||
if [ "$arg" = "-top-level" ]; then
|
||||
continue
|
||||
fi
|
||||
echo $arg >> "$optfilepath"
|
||||
done
|
||||
fi
|
||||
|
||||
top_level_arg=
|
||||
if [ -n "$CFG_TOPLEVEL" ]; then
|
||||
top_level_arg=-DTOP_LEVEL=TRUE
|
||||
cd ..
|
||||
fi
|
||||
|
||||
cmake "-DOPTFILE=$optfilename" $top_level_arg -P "$relpath/cmake/QtProcessConfigureArgs.cmake"
|
||||
|
204
configure.bat
204
configure.bat
@ -34,19 +34,6 @@ set QTSRC=%~dp0
|
||||
set QTSRC=%QTSRC:~0,-1%
|
||||
set QTDIR=%CD%
|
||||
|
||||
rem Make sure qmake is not confused by these. Recursion via Makefiles would
|
||||
rem be still affected, so just unsetting them here is not an option.
|
||||
if not "%QMAKESPEC%" == "" goto envfail
|
||||
if not "%XQMAKESPEC%" == "" goto envfail
|
||||
if not "%QMAKEPATH%" == "" goto envfail
|
||||
if not "%QMAKEFEATURES%" == "" goto envfail
|
||||
goto envok
|
||||
:envfail
|
||||
echo >&2 Please make sure to unset the QMAKESPEC, XQMAKESPEC, QMAKEPATH,
|
||||
echo >&2 and QMAKEFEATURES environment variables prior to building Qt.
|
||||
exit /b 1
|
||||
:envok
|
||||
|
||||
rem Parse command line
|
||||
|
||||
set TOPLEVEL=false
|
||||
@ -88,15 +75,6 @@ goto doneargs
|
||||
if /i "%~1" == "-redo" goto redo
|
||||
if /i "%~1" == "--redo" goto redo
|
||||
|
||||
if /i "%~1" == "-platform" goto platform
|
||||
if /i "%~1" == "--platform" goto platform
|
||||
|
||||
if /i "%~1" == "-no-syncqt" goto nosyncqt
|
||||
if /i "%~1" == "--no-syncqt" goto nosyncqt
|
||||
|
||||
if /i "%~1" == "-make-tool" goto maketool
|
||||
if /i "%~1" == "--make-tool" goto maketool
|
||||
|
||||
if /i "%~1" == "-cmake" goto cmake
|
||||
if /i "%~1" == "--cmake" goto cmake
|
||||
|
||||
@ -130,193 +108,15 @@ goto doneargs
|
||||
echo No config.opt present - cannot redo configuration. >&2
|
||||
exit /b 1
|
||||
|
||||
:platform
|
||||
shift
|
||||
set PLATFORM=%~1
|
||||
if "%PLATFORM:~0,10%" == "win32-msvc" goto msvc
|
||||
goto nextarg
|
||||
:msvc
|
||||
echo. >&2
|
||||
echo Notice: re-mapping requested qmake spec to unified 'win32-msvc'. >&2
|
||||
echo. >&2
|
||||
set PLATFORM=win32-msvc
|
||||
goto nextarg
|
||||
|
||||
:nosyncqt
|
||||
set SYNCQT=false
|
||||
goto nextarg
|
||||
|
||||
:maketool
|
||||
shift
|
||||
set MAKE=%~1
|
||||
goto nextarg
|
||||
|
||||
:cmake
|
||||
set CMAKE=true
|
||||
goto nextarg
|
||||
|
||||
:qmake
|
||||
set CMAKE=false
|
||||
goto nextarg
|
||||
echo ERROR: You cannot configure Qt 6 with qmake anymore. >&2
|
||||
exit /b 1
|
||||
|
||||
:doneargs
|
||||
|
||||
if "%CMAKE%" == "true" goto cmake
|
||||
|
||||
echo ERROR: You cannot configure Qt 6 with qmake anymore. Please configure with -cmake instead. >&2
|
||||
exit /b 1
|
||||
|
||||
rem Find various executables
|
||||
for %%C in (clang-cl.exe clang.exe cl.exe icl.exe g++.exe perl.exe jom.exe) do set %%C=%%~$PATH:C
|
||||
|
||||
rem Determine host spec
|
||||
|
||||
if "%PLATFORM%" == "" (
|
||||
if not "%icl.exe%" == "" (
|
||||
set PLATFORM=win32-icc
|
||||
) else if not "%cl.exe%" == "" (
|
||||
set PLATFORM=win32-msvc
|
||||
) else if not "%clang-cl.exe%" == "" (
|
||||
set PLATFORM=win32-clang-msvc
|
||||
) else if not "%clang.exe%" == "" (
|
||||
set PLATFORM=win32-clang-g++
|
||||
) else if not "%g++.exe%" == "" (
|
||||
set PLATFORM=win32-g++
|
||||
) else (
|
||||
echo Cannot detect host toolchain. Please use -platform. Aborting. >&2
|
||||
exit /b 1
|
||||
)
|
||||
)
|
||||
if not exist "%QTSRC%\mkspecs\%PLATFORM%\qmake.conf" (
|
||||
echo Host platform '%PLATFORM%' is invalid. Aborting. >&2
|
||||
exit /b 1
|
||||
)
|
||||
if "%PLATFORM:g++=%" == "%PLATFORM%" (
|
||||
if "%MAKE%" == "" (
|
||||
if not "%jom.exe%" == "" (
|
||||
set MAKE=jom
|
||||
) else (
|
||||
set MAKE=nmake
|
||||
)
|
||||
)
|
||||
set tmpl=win32
|
||||
) else (
|
||||
if "%MAKE%" == "" (
|
||||
set MAKE=mingw32-make
|
||||
)
|
||||
set tmpl=unix
|
||||
)
|
||||
|
||||
rem Prepare build dir
|
||||
|
||||
if not exist mkspecs (
|
||||
md mkspecs
|
||||
if errorlevel 1 exit /b
|
||||
)
|
||||
if not exist bin (
|
||||
md bin
|
||||
if errorlevel 1 exit /b
|
||||
)
|
||||
if not exist qmake (
|
||||
md qmake
|
||||
if errorlevel 1 exit /b
|
||||
)
|
||||
|
||||
rem Extract Qt's version from .qmake.conf
|
||||
for /f "eol=# tokens=1,2,3,4 delims=.= " %%i in (%QTSRC%\.qmake.conf) do (
|
||||
if %%i == MODULE_VERSION (
|
||||
set QTVERMAJ=%%j
|
||||
set QTVERMIN=%%k
|
||||
set QTVERPAT=%%l
|
||||
)
|
||||
)
|
||||
set QTVERSION=%QTVERMAJ%.%QTVERMIN%.%QTVERPAT%
|
||||
|
||||
rem Create forwarding headers
|
||||
|
||||
if "%SYNCQT%" == "" (
|
||||
if exist "%QTSRC%\.git" (
|
||||
set SYNCQT=true
|
||||
) else (
|
||||
set SYNCQT=false
|
||||
)
|
||||
)
|
||||
if "%SYNCQT%" == "true" (
|
||||
if not "%perl.exe%" == "" (
|
||||
echo Running syncqt ...
|
||||
"%perl.exe%" -w "%QTSRC%\bin\syncqt.pl" -minimal -version %QTVERSION% -module QtCore -outdir "%QTDIR%" %QTSRC%
|
||||
if errorlevel 1 exit /b
|
||||
) else (
|
||||
echo Perl not found in PATH. Aborting. >&2
|
||||
exit /b 1
|
||||
)
|
||||
)
|
||||
|
||||
rem Build qmake
|
||||
|
||||
echo Bootstrapping qmake ...
|
||||
|
||||
cd qmake
|
||||
if errorlevel 1 exit /b
|
||||
|
||||
echo #### Generated by configure.bat - DO NOT EDIT! ####> Makefile
|
||||
echo/>> Makefile
|
||||
echo BUILD_PATH = ..>> Makefile
|
||||
if "%tmpl%" == "win32" (
|
||||
echo SOURCE_PATH = %QTSRC%>> Makefile
|
||||
) else (
|
||||
echo SOURCE_PATH = %QTSRC:\=/%>> Makefile
|
||||
)
|
||||
if exist "%QTSRC%\.git" (
|
||||
echo INC_PATH = ../include>> Makefile
|
||||
) else (
|
||||
echo INC_PATH = $^(SOURCE_PATH^)/include>> Makefile
|
||||
)
|
||||
echo QT_VERSION = %QTVERSION%>> Makefile
|
||||
rem These must have trailing spaces to avoid misinterpretation as 5>>, etc.
|
||||
echo QT_MAJOR_VERSION = %QTVERMAJ% >> Makefile
|
||||
echo QT_MINOR_VERSION = %QTVERMIN% >> Makefile
|
||||
echo QT_PATCH_VERSION = %QTVERPAT% >> Makefile
|
||||
if "%tmpl%" == "win32" (
|
||||
echo QMAKESPEC = %PLATFORM%>> Makefile
|
||||
) else (
|
||||
echo QMAKESPEC = $^(SOURCE_PATH^)/mkspecs/%PLATFORM%>> Makefile
|
||||
echo CONFIG_CXXFLAGS = -std=c++17 -ffunction-sections>> Makefile
|
||||
echo CONFIG_LFLAGS = -Wl,--gc-sections>> Makefile
|
||||
type "%QTSRC%\qmake\Makefile.unix.win32" >> Makefile
|
||||
type "%QTSRC%\qmake\Makefile.unix.mingw" >> Makefile
|
||||
)
|
||||
echo/>> Makefile
|
||||
type "%QTSRC%\qmake\Makefile.%tmpl%" >> Makefile
|
||||
|
||||
%MAKE%
|
||||
if errorlevel 1 (cd .. & exit /b 1)
|
||||
|
||||
cd ..
|
||||
|
||||
rem Generate qt.conf
|
||||
|
||||
> "%QTDIR%\bin\qt.conf" (
|
||||
@echo [EffectivePaths]
|
||||
@echo Prefix=..
|
||||
@echo [Paths]
|
||||
@echo TargetSpec=dummy
|
||||
@echo HostSpec=%PLATFORM%
|
||||
)
|
||||
if not "%QTDIR%" == "%QTSRC%" (
|
||||
>> "%QTDIR%\bin\qt.conf" (
|
||||
@echo [EffectiveSourcePaths]
|
||||
@echo Prefix=%QTSRC:\=/%
|
||||
)
|
||||
)
|
||||
|
||||
rem Launch qmake-based configure
|
||||
|
||||
cd "%TOPQTDIR%"
|
||||
"%QTDIR%\bin\qmake.exe" "%TOPQTSRC%" -- %ARGS%
|
||||
goto :eof
|
||||
|
||||
:cmake
|
||||
cd "%TOPQTDIR%"
|
||||
|
||||
rem Write config.opt if we're not currently -redo'ing
|
||||
|
@ -1,612 +0,0 @@
|
||||
QMKSRC = $(SOURCE_PATH)/qmake
|
||||
QMKLIBSRC = $(QMKSRC)/library
|
||||
QMKGENSRC = $(QMKSRC)/generators
|
||||
|
||||
#qmake code (please keep in order matching DEPEND_SRC)
|
||||
OBJS = \
|
||||
main.o meta.o option.o project.o property.o \
|
||||
ioutils.o proitems.o qmakebuiltins.o qmakeevaluator.o \
|
||||
qmakeglobals.o qmakeparser.o qmakevfs.o \
|
||||
pbuilder_pbx.o \
|
||||
makefile.o makefiledeps.o metamakefile.o projectgenerator.o \
|
||||
unixmake2.o unixmake.o \
|
||||
mingw_make.o msbuild_objectmodel.o \
|
||||
msvc_nmake.o msvc_objectmodel.o msvc_vcproj.o msvc_vcxproj.o \
|
||||
winmakefile.o \
|
||||
xmloutput.o
|
||||
|
||||
#qt code (please keep in order matching DEPEND_SRC)
|
||||
QOBJS = \
|
||||
qendian.o qglobal.o qlogging.o qmalloc.o qnumeric.o qoperatingsystemversion.o qrandom.o \
|
||||
qabstractfileengine.o qbuffer.o qdatastream.o qdebug.o \
|
||||
qdir.o qdiriterator.o \
|
||||
qfile.o qfiledevice.o qfileinfo.o qfilesystemengine.o \
|
||||
qfilesystementry.o qfsfileengine.o qfsfileengine_iterator.o \
|
||||
qiodevice.o qsettings.o qtemporaryfile.o qtextstream.o \
|
||||
qcborstreamwriter.o qcborvalue.o \
|
||||
qjsoncbor.o qjsonarray.o qjsondocument.o qjsonobject.o qjsonparser.o qjsonvalue.o \
|
||||
qiterable.o qmetacontainer.o qmetatype.o qsystemerror.o qvariant.o \
|
||||
quuid.o \
|
||||
qarraydata.o qbitarray.o qbytearray.o qbytearraylist.o qbytearraymatcher.o \
|
||||
qcalendar.o qgregoriancalendar.o qromancalendar.o \
|
||||
qcryptographichash.o qdatetime.o qhash.o \
|
||||
qlocale.o qlocale_tools.o qregularexpression.o qringbuffer.o \
|
||||
qstringbuilder.o qstring.o qstringconverter.o qstringlist.o qversionnumber.o \
|
||||
qvsnprintf.o \
|
||||
pcre2_auto_possess.o pcre2_chartables.o pcre2_compile.o pcre2_config.o \
|
||||
pcre2_context.o pcre2_dfa_match.o pcre2_error.o pcre2_extuni.o \
|
||||
pcre2_find_bracket.o pcre2_jit_compile.o pcre2_maketables.o pcre2_match.o \
|
||||
pcre2_match_data.o pcre2_newline.o pcre2_ord2utf.o pcre2_pattern_info.o pcre2_script_run.o \
|
||||
pcre2_serialize.o pcre2_string_utils.o pcre2_study.o pcre2_substitute.o \
|
||||
pcre2_substring.o pcre2_tables.o pcre2_ucd.o pcre2_valid_utf.o \
|
||||
pcre2_xclass.o \
|
||||
$(QTOBJS) $(QTOBJS2)
|
||||
# QTOBJS and QTOBJS2 are populated by Makefile.unix.* as for QTSRC (see below).
|
||||
# Note: qlibraryinfo.o omitted deliberately - see below.
|
||||
|
||||
#all sources, used for the depend target (please keep alphabetic in each block)
|
||||
DEPEND_SRC = \
|
||||
$(QMKSRC)/main.cpp \
|
||||
$(QMKSRC)/meta.cpp \
|
||||
$(QMKSRC)/option.cpp \
|
||||
$(QMKSRC)/project.cpp \
|
||||
$(QMKSRC)/property.cpp \
|
||||
$(QMKLIBSRC)/ioutils.cpp \
|
||||
$(QMKLIBSRC)/proitems.cpp \
|
||||
$(QMKLIBSRC)/qmakebuiltins.cpp \
|
||||
$(QMKLIBSRC)/qmakeevaluator.cpp \
|
||||
$(QMKLIBSRC)/qmakeglobals.cpp \
|
||||
$(QMKLIBSRC)/qmakeparser.cpp \
|
||||
$(QMKLIBSRC)/qmakevfs.cpp \
|
||||
$(QMKGENSRC)/mac/pbuilder_pbx.cpp \
|
||||
$(QMKGENSRC)/makefile.cpp \
|
||||
$(QMKGENSRC)/makefiledeps.cpp \
|
||||
$(QMKGENSRC)/metamakefile.cpp \
|
||||
$(QMKGENSRC)/projectgenerator.cpp \
|
||||
$(QMKGENSRC)/unix/unixmake2.cpp \
|
||||
$(QMKGENSRC)/unix/unixmake.cpp \
|
||||
$(QMKGENSRC)/win32/mingw_make.cpp \
|
||||
$(QMKGENSRC)/win32/msbuild_objectmodel.cpp \
|
||||
$(QMKGENSRC)/win32/msvc_nmake.cpp \
|
||||
$(QMKGENSRC)/win32/msvc_objectmodel.cpp \
|
||||
$(QMKGENSRC)/win32/msvc_vcproj.cpp \
|
||||
$(QMKGENSRC)/win32/msvc_vcxproj.cpp \
|
||||
$(QMKGENSRC)/win32/winmakefile.cpp \
|
||||
$(QMKGENSRC)/xmloutput.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qendian.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qglobal.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qlibraryinfo.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qlogging.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qmalloc.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qnumeric.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/global/qrandom.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qabstractfileengine.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qbuffer.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qdebug.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qdir.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qdiriterator.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfile.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfiledevice.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfileinfo.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystemengine.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystementry.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfsfileengine.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfsfileengine_iterator.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qiodevice.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qsettings.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qtemporaryfile.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qiterable.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qmetacontainer.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qmetatype.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qsystemerror.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qvariant.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/plugin/quuid.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qcborstreamwriter.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qcborvalue.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qdatastream.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsonarray.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsoncbor.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsondocument.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsonobject.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsonparser.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qjsonvalue.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/serialization/qtextstream.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qbytearray.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qbytearraylist.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qbytearraymatcher.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qlocale.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qlocale_tools.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qregularexpression.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qstringbuilder.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qstringconverter.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qstring.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qstringlist.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/text/qvsnprintf.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/time/qcalendar.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/time/qdatetime.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/time/qgregoriancalendar.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/time/qromancalendar.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qarraydata.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qbitarray.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qcryptographichash.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qhash.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qringbuffer.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qversionnumber.cpp \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_auto_possess.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_chartables.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_compile.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_config.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_context.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_dfa_match.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_error.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_extuni.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_find_bracket.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_jit_compile.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_maketables.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_match.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_match_data.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_newline.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_ord2utf.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_pattern_info.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_script_run.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_serialize.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_string_utils.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_study.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_substitute.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_substring.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_tables.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_ucd.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_valid_utf.c \
|
||||
$(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_xclass.c \
|
||||
$(QTSRCS) $(QTSRCS2)
|
||||
# QTSRCS and QTSRCS2 come from Makefile.unix.* (concatenated with this
|
||||
# by configure); QTSRCS2 may include *.mm entries on macOS.
|
||||
# See below for special handling of qlibraryinfo.cpp
|
||||
|
||||
CPPFLAGS = -g $(EXTRA_CPPFLAGS) \
|
||||
-I$(QMKSRC) -I$(QMKLIBSRC) -I$(QMKGENSRC) \
|
||||
-I$(SOURCE_PATH)/src/3rdparty/tinycbor/src \
|
||||
-I$(SOURCE_PATH)/src/3rdparty/pcre2/src \
|
||||
-I$(QMKGENSRC)/unix -I$(QMKGENSRC)/win32 -I$(QMKGENSRC)/mac \
|
||||
-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 \
|
||||
-I$(QMAKESPEC) \
|
||||
-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_FOREACH -DQT_USE_QSTRINGBUILDER \
|
||||
-DPCRE2_CODE_UNIT_WIDTH=16 -DHAVE_CONFIG_H \
|
||||
-DPCRE2_DISABLE_JIT \
|
||||
$(EXTRA_CPPFLAGS)
|
||||
|
||||
CXXFLAGS = $(EXTRA_CXXFLAGS) $(CONFIG_CXXFLAGS) $(CPPFLAGS)
|
||||
CFLAGS = $(CPPFLAGS) $(CONFIG_CFLAGS)
|
||||
LFLAGS = $(EXTRA_LFLAGS) $(CONFIG_LFLAGS)
|
||||
|
||||
first all: $(BUILD_PATH)/bin/qmake$(EXEEXT)
|
||||
qmake: $(BUILD_PATH)/bin/qmake$(EXEEXT)
|
||||
binary: $(BUILD_PATH)/qmake/qmake$(EXEEXT)
|
||||
|
||||
$(BUILD_PATH)/bin/qmake$(EXEEXT): $(OBJS) $(QOBJS) qlibraryinfo.o
|
||||
$(CXX) -o "$@" $(OBJS) $(QOBJS) qlibraryinfo.o $(LFLAGS)
|
||||
|
||||
$(BUILD_PATH)/qmake/qmake$(EXEEXT): $(OBJS) $(QOBJS) qlibraryinfo_final.o
|
||||
$(CXX) -o "$@" $(OBJS) $(QOBJS) qlibraryinfo_final.o $(LFLAGS)
|
||||
|
||||
Makefile: $(SOURCE_PATH)/qmake/Makefile.unix
|
||||
@echo "Out of date, please rerun configure"
|
||||
|
||||
clean::
|
||||
$(RM_F) $(OBJS) $(QOBJS) qlibraryinfo.o qlibraryinfo_final.o
|
||||
|
||||
distclean:: clean
|
||||
$(RM_RF) .deps
|
||||
$(RM_F) $(BUILD_PATH)/bin/qmake$(EXEEXT)
|
||||
$(RM_F) $(BUILD_PATH)/qmake/qmake$(EXEEXT)
|
||||
$(RM_F) Makefile
|
||||
|
||||
depend:
|
||||
makedepend -D__MAKEDEPEND__ $(CPPFLAGS) $(DEPEND_SRC)
|
||||
$(RM_F) Makefile.bak
|
||||
|
||||
|
||||
ioutils.o: $(QMKLIBSRC)/ioutils.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
proitems.o: $(QMKLIBSRC)/proitems.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmakeglobals.o: $(QMKLIBSRC)/qmakeglobals.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmakevfs.o: $(QMKLIBSRC)/qmakevfs.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmakeparser.o: $(QMKLIBSRC)/qmakeparser.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmakeevaluator.o: $(QMKLIBSRC)/qmakeevaluator.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmakebuiltins.o: $(QMKLIBSRC)/qmakebuiltins.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
registry.o: $(QMKLIBSRC)/registry.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
project.o: $(QMKSRC)/project.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
property.o: $(QMKSRC)/property.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
meta.o: $(QMKSRC)/meta.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
main.o: $(QMKSRC)/main.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
option.o: $(QMKSRC)/option.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
metamakefile.o: $(QMKSRC)/generators/metamakefile.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
xmloutput.o: $(QMKSRC)/generators/xmloutput.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
makefiledeps.o: $(QMKSRC)/generators/makefiledeps.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
makefile.o: $(QMKSRC)/generators/makefile.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
unixmake.o: $(QMKSRC)/generators/unix/unixmake.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
unixmake2.o: $(QMKSRC)/generators/unix/unixmake2.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
winmakefile.o: $(QMKSRC)/generators/win32/winmakefile.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
mingw_make.o: $(QMKSRC)/generators/win32/mingw_make.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
msvc_objectmodel.o: $(QMKSRC)/generators/win32/msvc_objectmodel.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
msvc_vcproj.o: $(QMKSRC)/generators/win32/msvc_vcproj.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
msbuild_objectmodel.o: $(QMKSRC)/generators/win32/msbuild_objectmodel.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
msvc_vcxproj.o: $(QMKSRC)/generators/win32/msvc_vcxproj.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
msvc_nmake.o: $(QMKSRC)/generators/win32/msvc_nmake.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
pbuilder_pbx.o: $(QMKSRC)/generators/mac/pbuilder_pbx.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
projectgenerator.o: $(QMKSRC)/generators/projectgenerator.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
|
||||
qvariant.o: $(SOURCE_PATH)/src/corelib/kernel/qvariant.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qsettings.o: $(SOURCE_PATH)/src/corelib/io/qsettings.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qsystemerror.o: $(SOURCE_PATH)/src/corelib/kernel/qsystemerror.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlibraryinfo.o: $(SOURCE_PATH)/src/corelib/global/qlibraryinfo.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) -DQT_BUILD_QMAKE_BOOTSTRAP $<
|
||||
|
||||
qlibraryinfo_final.o: $(SOURCE_PATH)/src/corelib/global/qlibraryinfo.cpp $(BUILD_PATH)/src/corelib/global/qconfig.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qnumeric.o: $(SOURCE_PATH)/src/corelib/global/qnumeric.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qrandom.o: $(SOURCE_PATH)/src/corelib/global/qrandom.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qsettings_mac.o: $(SOURCE_PATH)/src/corelib/io/qsettings_mac.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qsettings_win.o: $(SOURCE_PATH)/src/corelib/io/qsettings_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qiodevice.o: $(SOURCE_PATH)/src/corelib/io/qiodevice.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qringbuffer.o: $(SOURCE_PATH)/src/corelib/tools/qringbuffer.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qdebug.o: $(SOURCE_PATH)/src/corelib/io/qdebug.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmalloc.o: $(SOURCE_PATH)/src/corelib/global/qmalloc.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qendian.o: $(SOURCE_PATH)/src/corelib/global/qendian.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qglobal.o: $(SOURCE_PATH)/src/corelib/global/qglobal.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qarraydata.o: $(SOURCE_PATH)/src/corelib/tools/qarraydata.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qbytearray.o: $(SOURCE_PATH)/src/corelib/text/qbytearray.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qbytearraylist.o: $(SOURCE_PATH)/src/corelib/text/qbytearraylist.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qvsnprintf.o: $(SOURCE_PATH)/src/corelib/text/qvsnprintf.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qbytearraymatcher.o: $(SOURCE_PATH)/src/corelib/text/qbytearraymatcher.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qiterable.o: $(SOURCE_PATH)/src/corelib/kernel/qiterable.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmetacontainer.o: $(SOURCE_PATH)/src/corelib/kernel/qmetacontainer.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmetatype.o: $(SOURCE_PATH)/src/corelib/kernel/qmetatype.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcore_mac.o: $(SOURCE_PATH)/src/corelib/kernel/qcore_mac.mm
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcore_unix.o: $(SOURCE_PATH)/src/corelib/kernel/qcore_unix.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qoperatingsystemversion.o: $(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qoperatingsystemversion_win.o: $(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qoperatingsystemversion_darwin.o: $(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion_darwin.mm
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcore_foundation.o: $(SOURCE_PATH)/src/corelib/kernel/qcore_foundation.mm
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qstring.o: $(SOURCE_PATH)/src/corelib/text/qstring.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qstringbuilder.o: $(SOURCE_PATH)/src/corelib/text/qstringbuilder.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qstringconverter.o: $(SOURCE_PATH)/src/corelib/text/qstringconverter.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlocale.o: $(SOURCE_PATH)/src/corelib/text/qlocale.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlocale_tools.o: $(SOURCE_PATH)/src/corelib/text/qlocale_tools.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlocale_unix.o: $(SOURCE_PATH)/src/corelib/text/qlocale_unix.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlocale_win.o: $(SOURCE_PATH)/src/corelib/text/qlocale_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qversionnumber.o: $(SOURCE_PATH)/src/corelib/tools/qversionnumber.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qbuffer.o: $(SOURCE_PATH)/src/corelib/io/qbuffer.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfile.o: $(SOURCE_PATH)/src/corelib/io/qfile.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfiledevice.o: $(SOURCE_PATH)/src/corelib/io/qfiledevice.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystementry.o: $(SOURCE_PATH)/src/corelib/io/qfilesystementry.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystemengine.o: $(SOURCE_PATH)/src/corelib/io/qfilesystemengine.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystemengine_unix.o: $(SOURCE_PATH)/src/corelib/io/qfilesystemengine_unix.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystemengine_win.o: $(SOURCE_PATH)/src/corelib/io/qfilesystemengine_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystemiterator_unix.o: $(SOURCE_PATH)/src/corelib/io/qfilesystemiterator_unix.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfilesystemiterator_win.o: $(SOURCE_PATH)/src/corelib/io/qfilesystemiterator_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfsfileengine.o: $(SOURCE_PATH)/src/corelib/io/qfsfileengine.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfsfileengine_iterator.o: $(SOURCE_PATH)/src/corelib/io/qfsfileengine_iterator.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfsfileengine_unix.o: $(SOURCE_PATH)/src/corelib/io/qfsfileengine_unix.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfsfileengine_win.o: $(SOURCE_PATH)/src/corelib/io/qfsfileengine_win.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qabstractfileengine.o: $(SOURCE_PATH)/src/corelib/io/qabstractfileengine.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qtemporaryfile.o: $(SOURCE_PATH)/src/corelib/io/qtemporaryfile.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qregularexpression.o: $(SOURCE_PATH)/src/corelib/text/qregularexpression.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qbitarray.o: $(SOURCE_PATH)/src/corelib/tools/qbitarray.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qdir.o: $(SOURCE_PATH)/src/corelib/io/qdir.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qdiriterator.o: $(SOURCE_PATH)/src/corelib/io/qdiriterator.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
quuid.o: $(SOURCE_PATH)/src/corelib/plugin/quuid.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qfileinfo.o: $(SOURCE_PATH)/src/corelib/io/qfileinfo.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qdatetime.o: $(SOURCE_PATH)/src/corelib/time/qdatetime.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcalendar.o: $(SOURCE_PATH)/src/corelib/time/qcalendar.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qgregoriancalendar.o: $(SOURCE_PATH)/src/corelib/time/qgregoriancalendar.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qromancalendar.o: $(SOURCE_PATH)/src/corelib/time/qromancalendar.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qstringlist.o: $(SOURCE_PATH)/src/corelib/text/qstringlist.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qmap.o: $(SOURCE_PATH)/src/corelib/tools/qmap.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qhash.o: $(SOURCE_PATH)/src/corelib/tools/qhash.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcryptographichash.o: $(SOURCE_PATH)/src/corelib/tools/qcryptographichash.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qlogging.o: $(SOURCE_PATH)/src/corelib/global/qlogging.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qsystemlibrary.o: $(SOURCE_PATH)/src/corelib/plugin/qsystemlibrary.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qdatastream.o: $(SOURCE_PATH)/src/corelib/serialization/qdatastream.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcborstreamwriter.o: $(SOURCE_PATH)/src/corelib/serialization/qcborstreamwriter.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qcborvalue.o: $(SOURCE_PATH)/src/corelib/serialization/qcborvalue.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsoncbor.o: $(SOURCE_PATH)/src/corelib/serialization/qjsoncbor.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsondocument.o: $(SOURCE_PATH)/src/corelib/serialization/qjsondocument.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsonparser.o: $(SOURCE_PATH)/src/corelib/serialization/qjsonparser.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsonarray.o: $(SOURCE_PATH)/src/corelib/serialization/qjsonarray.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsonobject.o: $(SOURCE_PATH)/src/corelib/serialization/qjsonobject.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qjsonvalue.o: $(SOURCE_PATH)/src/corelib/serialization/qjsonvalue.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
qtextstream.o: $(SOURCE_PATH)/src/corelib/serialization/qtextstream.cpp
|
||||
$(CXX) -c -o $@ $(CXXFLAGS) $<
|
||||
|
||||
pcre2_auto_possess.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_auto_possess.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_chartables.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_chartables.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_compile.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_compile.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_config.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_config.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_context.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_context.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_dfa_match.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_dfa_match.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_error.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_error.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_extuni.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_extuni.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_find_bracket.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_find_bracket.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_jit_compile.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_jit_compile.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_maketables.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_maketables.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_match.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_match.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_match_data.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_match_data.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_newline.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_newline.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_ord2utf.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_ord2utf.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_pattern_info.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_pattern_info.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_script_run.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_script_run.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_serialize.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_serialize.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_string_utils.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_string_utils.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_study.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_study.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_substitute.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_substitute.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_substring.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_substring.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_tables.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_tables.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_ucd.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_ucd.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_valid_utf.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_valid_utf.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
pcre2_xclass.o: $(SOURCE_PATH)/src/3rdparty/pcre2/src/pcre2_xclass.c
|
||||
$(CC) -c -o $@ $(CFLAGS) $<
|
||||
|
||||
|
||||
# DO NOT DELETE THIS LINE -- make depend depends on it
|
@ -1,17 +0,0 @@
|
||||
COCOA_LFLAGS = -framework Foundation -framework CoreServices
|
||||
CARBON_LFLAGS = -framework ApplicationServices
|
||||
CARBON_CFLAGS = -fconstant-cfstrings
|
||||
|
||||
EXTRA_CXXFLAGS = $(CARBON_CFLAGS)
|
||||
EXTRA_LFLAGS = $(COCOA_LFLAGS) $(CARBON_LFLAGS)
|
||||
|
||||
QTOBJS2 = \
|
||||
qsettings_mac.o \
|
||||
qcore_mac.o \
|
||||
qoperatingsystemversion_darwin.o \
|
||||
qcore_foundation.o
|
||||
QTSRCS2 = \
|
||||
$(SOURCE_PATH)/src/corelib/io/qsettings_mac.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qcore_mac.mm \
|
||||
$(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion_darwin.mm \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qcore_foundation.mm
|
@ -1,30 +0,0 @@
|
||||
# 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 ./sh.exe), )
|
||||
SH = 0
|
||||
else
|
||||
SH = 1
|
||||
endif
|
||||
else
|
||||
SH = 1
|
||||
endif
|
||||
|
||||
ifeq ($(SH), 1)
|
||||
RM_F = rm -f
|
||||
RM_RF = rm -rf
|
||||
else
|
||||
RM_F = del /f
|
||||
RM_RF = rmdir /s /q
|
||||
endif
|
||||
ifeq ($(CXX), g++)
|
||||
CC = gcc
|
||||
endif
|
@ -1,13 +0,0 @@
|
||||
EXEEXT =
|
||||
QTOBJS = \
|
||||
qcore_unix.o \
|
||||
qfilesystemengine_unix.o \
|
||||
qfilesystemiterator_unix.o \
|
||||
qfsfileengine_unix.o \
|
||||
qlocale_unix.o
|
||||
QTSRCS = \
|
||||
$(SOURCE_PATH)/src/corelib/kernel/qcore_unix.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystemengine_unix.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystemiterator_unix.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfsfileengine_unix.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qlocale_unix.cpp
|
@ -1,21 +0,0 @@
|
||||
EXEEXT = .exe
|
||||
EXTRA_CPPFLAGS = -DPCRE2_STATIC -DUNICODE -DMINGW_HAS_SECURE_API=1
|
||||
EXTRA_LFLAGS = -static -s -lole32 -luuid -ladvapi32 -lkernel32 -lnetapi32
|
||||
QTOBJS = \
|
||||
qfilesystemengine_win.o \
|
||||
qfilesystemiterator_win.o \
|
||||
qfsfileengine_win.o \
|
||||
qlocale_win.o \
|
||||
qsettings_win.o \
|
||||
qoperatingsystemversion_win.o \
|
||||
qsystemlibrary.o \
|
||||
registry.o
|
||||
QTSRCS = \
|
||||
$(SOURCE_PATH)/src/corelib/global/qoperatingsystemversion_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystemengine_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfilesystemiterator_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qfsfileengine_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/io/qsettings_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/tools/qlocale_win.cpp \
|
||||
$(SOURCE_PATH)/src/corelib/plugin/qsystemlibrary.cpp \
|
||||
$(SOURCE_PATH)/qmake/library/registry.cpp
|
@ -1,247 +0,0 @@
|
||||
!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 = xilink
|
||||
CFLAGS_EXTRA = /Zc:forScope /Qstd=c++11
|
||||
!elseif "$(QMAKESPEC)" == "win32-clang-msvc"
|
||||
CXX = clang-cl
|
||||
LINKER = lld-link
|
||||
CFLAGS_EXTRA = -fms-compatibility-version=19.00.23506 -Wno-microsoft-enum-value
|
||||
!else
|
||||
CXX = cl
|
||||
LINKER = link
|
||||
CFLAGS_EXTRA = /MP /wd4577 $(CFLAGS_CRT)
|
||||
!endif # !win32-icc
|
||||
|
||||
CFLAGS_PCH = -Yuqmake_pch.h -FIqmake_pch.h -Fpqmake_pch.pch
|
||||
PCH_OBJECT = qmake_pch.obj
|
||||
|
||||
CFLAGS_BARE = -c -Fo./ -Fdqmake.pdb \
|
||||
-W2 -nologo -O2 -std:c++17 -Zc:__cplusplus \
|
||||
$(CFLAGS_EXTRA) \
|
||||
-I$(QMKSRC) -I$(QMKSRC)\library -I$(QMKSRC)\generators -I$(QMKSRC)\generators\unix -I$(QMKSRC)\generators\win32 -I$(QMKSRC)\generators\mac \
|
||||
-I$(SOURCE_PATH)/src/3rdparty/tinycbor/src \
|
||||
-I$(SOURCE_PATH)/src/3rdparty/pcre2/src \
|
||||
-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 \
|
||||
-I$(SOURCE_PATH)\mkspecs\$(QMAKESPEC) \
|
||||
-D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS \
|
||||
-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_FOREACH -DQT_USE_QSTRINGBUILDER -DUNICODE -D_ENABLE_EXTENDED_ALIGNED_STORAGE \
|
||||
-DPCRE2_CODE_UNIT_WIDTH=16 -DHAVE_CONFIG_H -DPCRE2_STATIC -DPCRE2_DISABLE_JIT
|
||||
|
||||
CFLAGS = $(CFLAGS_BARE) $(CFLAGS)
|
||||
|
||||
CXXFLAGS_BARE = $(CFLAGS_BARE)
|
||||
CXXFLAGS = $(CFLAGS) $(CFLAGS_PCH)
|
||||
|
||||
LFLAGS =
|
||||
LIBS = ole32.lib advapi32.lib shell32.lib netapi32.lib
|
||||
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
|
||||
|
||||
#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 \
|
||||
qbytearraylist.obj \
|
||||
qvsnprintf.obj \
|
||||
qbytearraymatcher.obj \
|
||||
qcalendar.obj \
|
||||
qdatetime.obj \
|
||||
qdir.obj \
|
||||
qdiriterator.obj \
|
||||
qfiledevice.obj \
|
||||
qfile.obj \
|
||||
qtemporaryfile.obj \
|
||||
qabstractfileengine.obj \
|
||||
qfsfileengine_win.obj \
|
||||
qsystemlibrary.obj \
|
||||
qfileinfo.obj \
|
||||
qendian.obj \
|
||||
qglobal.obj \
|
||||
qgregoriancalendar.obj \
|
||||
qhash.obj \
|
||||
qiodevice.obj \
|
||||
qringbuffer.obj \
|
||||
qdebug.obj \
|
||||
qlocale.obj \
|
||||
qlocale_tools.obj \
|
||||
qlocale_win.obj \
|
||||
qversionnumber.obj \
|
||||
qmalloc.obj \
|
||||
qoperatingsystemversion.obj \
|
||||
qoperatingsystemversion_win.obj \
|
||||
qromancalendar.obj \
|
||||
qstring.obj \
|
||||
qstringconverter.obj \
|
||||
qstringlist.obj \
|
||||
qstringbuilder.obj \
|
||||
qsystemerror.obj \
|
||||
qtextstream.obj \
|
||||
qdatastream.obj \
|
||||
quuid.obj \
|
||||
qrandom.obj \
|
||||
qsettings.obj \
|
||||
qvariant.obj \
|
||||
qsettings_win.obj \
|
||||
qiterable.obj \
|
||||
qmetacontainer.obj \
|
||||
qmetatype.obj \
|
||||
qnumeric.obj \
|
||||
qlogging.obj \
|
||||
qcborstreamwriter.obj \
|
||||
qcborvalue.obj \
|
||||
qjsoncbor.obj \
|
||||
qjsondocument.obj \
|
||||
qjsonparser.obj \
|
||||
qjsonarray.obj \
|
||||
qjsonobject.obj \
|
||||
qjsonvalue.obj \
|
||||
qregularexpression.obj \
|
||||
pcre2_auto_possess.obj \
|
||||
pcre2_chartables.obj \
|
||||
pcre2_compile.obj \
|
||||
pcre2_config.obj \
|
||||
pcre2_context.obj \
|
||||
pcre2_dfa_match.obj \
|
||||
pcre2_error.obj \
|
||||
pcre2_extuni.obj \
|
||||
pcre2_find_bracket.obj \
|
||||
pcre2_jit_compile.obj \
|
||||
pcre2_maketables.obj \
|
||||
pcre2_match.obj \
|
||||
pcre2_match_data.obj \
|
||||
pcre2_newline.obj \
|
||||
pcre2_ord2utf.obj \
|
||||
pcre2_pattern_info.obj \
|
||||
pcre2_script_run.obj \
|
||||
pcre2_serialize.obj \
|
||||
pcre2_string_utils.obj \
|
||||
pcre2_study.obj \
|
||||
pcre2_substitute.obj \
|
||||
pcre2_substring.obj \
|
||||
pcre2_tables.obj \
|
||||
pcre2_ucd.obj \
|
||||
pcre2_valid_utf.obj \
|
||||
pcre2_xclass.obj \
|
||||
|
||||
first all: $(BUILD_PATH)\bin\qmake.exe
|
||||
binary: $(BUILD_PATH)\qmake\qmake.exe
|
||||
|
||||
$(BUILD_PATH)\bin\qmake.exe: $(OBJS) $(QTOBJS) qlibraryinfo.obj
|
||||
$(LINKER) $(LFLAGS) /OUT:$(BUILD_PATH)\bin\qmake.exe $(OBJS) $(QTOBJS) qlibraryinfo.obj $(PCH_OBJECT) $(LIBS)
|
||||
|
||||
$(BUILD_PATH)\qmake\qmake.exe: $(OBJS) $(QTOBJS) qlibraryinfo_final.obj
|
||||
$(LINKER) $(LFLAGS) /OUT:$(BUILD_PATH)\qmake\qmake.exe $(OBJS) $(QTOBJS) qlibraryinfo_final.obj $(PCH_OBJECT) $(LIBS)
|
||||
|
||||
clean::
|
||||
-del $(QTOBJS) qlibraryinfo.obj qlibraryinfo_final.obj
|
||||
-del $(OBJS)
|
||||
-del qmake_pch.obj
|
||||
-del qmake_pch.pch
|
||||
-del qmake.pdb
|
||||
-del qmake.ilk
|
||||
-del qmake.tds
|
||||
|
||||
distclean:: clean
|
||||
-del $(BUILD_PATH)\bin\qmake.exe
|
||||
-del $(BUILD_PATH)\qmake\qmake.exe
|
||||
-del Makefile
|
||||
|
||||
.cpp.obj:
|
||||
$(CXX) $(CXXFLAGS) $<
|
||||
|
||||
$(OBJS): $(PCH_OBJECT)
|
||||
|
||||
$(QTOBJS): $(PCH_OBJECT)
|
||||
|
||||
qlibraryinfo.obj: $(PCH_OBJECT)
|
||||
qlibraryinfo_final.obj: $(PCH_OBJECT)
|
||||
|
||||
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\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\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\serialization}.cpp{}.obj::
|
||||
$(CXX) $(CXXFLAGS) $<
|
||||
|
||||
{$(SOURCE_PATH)\src\corelib\text}.cpp{}.obj::
|
||||
$(CXX) $(CXXFLAGS) $<
|
||||
|
||||
{$(SOURCE_PATH)\src\corelib\time}.cpp{}.obj::
|
||||
$(CXX) $(CXXFLAGS) $<
|
||||
|
||||
{$(SOURCE_PATH)\src\corelib\tools}.cpp{}.obj::
|
||||
$(CXX) $(CXXFLAGS) $<
|
||||
|
||||
{$(SOURCE_PATH)\src\3rdparty\pcre2\src}.c{}.obj::
|
||||
$(CXX) $(CFLAGS) $<
|
||||
|
||||
# Make sure qlibraryinfo.obj isn't compiled with PCH enabled
|
||||
qlibraryinfo.obj: $(SOURCE_PATH)\src\corelib\global\qlibraryinfo.cpp
|
||||
$(CXX) $(CXXFLAGS_BARE) -DQT_BUILD_QMAKE_BOOTSTRAP $(SOURCE_PATH)\src\corelib\global\qlibraryinfo.cpp
|
||||
|
||||
qlibraryinfo_final.obj: $(SOURCE_PATH)\src\corelib\global\qlibraryinfo.cpp $(BUILD_PATH)\src\corelib\global\qconfig.cpp
|
||||
$(CXX) $(CXXFLAGS) -Foqlibraryinfo_final.obj $(SOURCE_PATH)\src\corelib\global\qlibraryinfo.cpp
|
Loading…
Reference in New Issue
Block a user