mirror of https://github.com/qt/qtbase.git
centralize setup of shell-related variables in spec_post.prf
it makes no sense to let every spec do that separately, as it's fixed by the generator+shell. putting it into a file which is loaded regardless of the spec also allows us to remove the hardcoded fallbacks from qmake. if somebody overrode the values in their spec for some weird reasons, they'll need to override spec_post.prf. shell-{unix,win32}.conf are now dummies and print warnings. Task-number: QTBUG-37269 Change-Id: I66c24fb4072ce4d63fdbfc57618daa2a48fa1d80 Reviewed-by: Jochen Seemann <seemann.jochen@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This commit is contained in:
parent
6400e4bb10
commit
95d385466d
|
@ -10,30 +10,6 @@ include(../common/gcc-base-unix.conf)
|
|||
|
||||
load(device_config)
|
||||
|
||||
# Passing in -win32 to qmake (from NQTC) causes this condition to pass, however
|
||||
# qmake complains that -win32 is deprecated; should find another way, Q_OS_WIN
|
||||
# should really be all QMAKE_HOST.os needs to depend on?
|
||||
contains(QMAKE_HOST.os,Windows) {
|
||||
# Not having sh.exe in your path causes this condition to pass
|
||||
# To build Android Qt on Windows, this block must not be evaluated.
|
||||
isEmpty(QMAKE_SH) {
|
||||
# Override values from previously loaded shell-unix.conf
|
||||
# (via unix.conf, via linux.conf).
|
||||
include(../common/shell-win32.conf)
|
||||
QMAKE_DEL_TREE = rmdir /s /q
|
||||
QMAKE_INSTALL_FILE = copy /y
|
||||
QMAKE_INSTALL_PROGRAM = copy /y
|
||||
} else {
|
||||
MINGW_IN_SHELL = 1
|
||||
QMAKE_DIR_SEP = /
|
||||
QMAKE_DIRLIST_SEP = :
|
||||
# Because install's ability to set permissions is not relevant on Windows,
|
||||
# and git's msys does not provide it to start with.
|
||||
QMAKE_INSTALL_FILE = cp -f
|
||||
QMAKE_INSTALL_PROGRAM = cp -f
|
||||
}
|
||||
}
|
||||
|
||||
NDK_ROOT = $$(ANDROID_NDK_ROOT)
|
||||
!exists($$NDK_ROOT) {
|
||||
NDK_ROOT = $$DEFAULT_ANDROID_NDK_ROOT
|
||||
|
|
|
@ -51,7 +51,5 @@ QMAKE_RANLIB =
|
|||
|
||||
QMAKE_STRIP = strip
|
||||
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
|
||||
include(unix.conf)
|
||||
|
|
|
@ -1,14 +1 @@
|
|||
QMAKE_TAR = tar -cf
|
||||
QMAKE_GZIP = gzip -9f
|
||||
|
||||
QMAKE_COPY = cp -f
|
||||
QMAKE_COPY_FILE = $$QMAKE_COPY
|
||||
QMAKE_COPY_DIR = $$QMAKE_COPY -R
|
||||
QMAKE_MOVE = mv -f
|
||||
QMAKE_DEL_FILE = rm -f
|
||||
QMAKE_DEL_DIR = rmdir
|
||||
QMAKE_CHK_EXISTS = test -e %1 ||
|
||||
QMAKE_CHK_DIR_EXISTS = test -d # legacy
|
||||
QMAKE_MKDIR = mkdir -p # legacy
|
||||
QMAKE_MKDIR_CMD = test -d %1 || mkdir -p %1
|
||||
QMAKE_STREAM_EDITOR = sed
|
||||
warning("shell-unix.conf is deprecated and has no effect.")
|
||||
|
|
|
@ -1,17 +1 @@
|
|||
QMAKE_ZIP = zip -r -9
|
||||
|
||||
QMAKE_COPY = copy /y
|
||||
QMAKE_COPY_DIR = xcopy /s /q /y /i
|
||||
QMAKE_MOVE = move
|
||||
QMAKE_DEL_FILE = del
|
||||
QMAKE_DEL_DIR = rmdir
|
||||
QMAKE_CHK_EXISTS = if not exist %1
|
||||
QMAKE_CHK_DIR_EXISTS = if not exist # legacy
|
||||
QMAKE_MKDIR = mkdir # legacy
|
||||
QMAKE_MKDIR_CMD = if not exist %1 mkdir %1 & if not exist %1 exit 1
|
||||
# Ugly hack to support cross-building for unix (android).
|
||||
QMAKE_SYMBOLIC_LINK = $$QMAKE_COPY
|
||||
QMAKE_LN_SHLIB = $$QMAKE_SYMBOLIC_LINK
|
||||
# xcopy copies the contained files if source is a directory. Deal with it.
|
||||
CONFIG += copy_dir_files
|
||||
QMAKE_STREAM_EDITOR = $(QMAKE) -install sed
|
||||
warning("shell-win32.conf is deprecated and has no effect.")
|
||||
|
|
|
@ -14,5 +14,3 @@ QMAKE_YACC_SOURCE = $base.tab.c
|
|||
QMAKE_PREFIX_SHLIB = lib
|
||||
QMAKE_PREFIX_STATICLIB = lib
|
||||
QMAKE_EXTENSION_STATICLIB = a
|
||||
|
||||
include(shell-unix.conf)
|
||||
|
|
|
@ -73,8 +73,6 @@ QMAKE_IDL = midl
|
|||
QMAKE_LIB = lib
|
||||
QMAKE_RC = rc
|
||||
|
||||
include(../shell-win32.conf)
|
||||
|
||||
VCPROJ_EXTENSION = .vcproj
|
||||
VCSOLUTION_EXTENSION = .sln
|
||||
VCPROJ_KEYWORD = Qt4VSv1.0
|
||||
|
|
|
@ -85,8 +85,6 @@ QMAKE_IDL = midl
|
|||
QMAKE_LIB = lib /NOLOGO
|
||||
QMAKE_RC = rc
|
||||
|
||||
include(../shell-win32.conf)
|
||||
|
||||
VCPROJ_EXTENSION = .vcxproj
|
||||
VCSOLUTION_EXTENSION = .sln
|
||||
VCPROJ_KEYWORD = Qt4VSv1.0
|
||||
|
|
|
@ -73,5 +73,4 @@ QMAKE_OBJCOPY = objcopy
|
|||
QMAKE_NM = nm -P
|
||||
QMAKE_RANLIB =
|
||||
|
||||
include(../common/shell-unix.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -54,3 +54,65 @@ isEmpty(QMAKE_COMPILER) {
|
|||
warning("qmake spec does not announce the compiler family. Guessed $${QMAKE_COMPILER}.")
|
||||
}
|
||||
CONFIG += $$QMAKE_COMPILER
|
||||
|
||||
equals(MAKEFILE_GENERATOR, MSBUILD) \
|
||||
|equals(MAKEFILE_GENERATOR, MSVC.NET) \
|
||||
|isEmpty(QMAKE_SH) {
|
||||
QMAKE_ZIP = zip -r -9
|
||||
|
||||
QMAKE_COPY = copy /y
|
||||
QMAKE_COPY_FILE = $$QMAKE_COPY
|
||||
QMAKE_COPY_DIR = xcopy /s /q /y /i
|
||||
# xcopy copies the contained files if source is a directory. Deal with it.
|
||||
CONFIG += copy_dir_files
|
||||
QMAKE_MOVE = move
|
||||
QMAKE_DEL_FILE = del
|
||||
QMAKE_DEL_DIR = rmdir
|
||||
QMAKE_DEL_TREE = rmdir /s /q
|
||||
QMAKE_CHK_EXISTS = if not exist %1
|
||||
QMAKE_CHK_DIR_EXISTS = if not exist # legacy
|
||||
QMAKE_MKDIR = mkdir # legacy
|
||||
QMAKE_MKDIR_CMD = if not exist %1 mkdir %1 & if not exist %1 exit 1
|
||||
QMAKE_STREAM_EDITOR = $(QMAKE) -install sed
|
||||
QMAKE_INSTALL_FILE = copy /y
|
||||
QMAKE_INSTALL_PROGRAM = copy /y
|
||||
} else {
|
||||
QMAKE_TAR = tar -cf
|
||||
QMAKE_GZIP = gzip -9f
|
||||
|
||||
QMAKE_COPY = cp -f
|
||||
QMAKE_COPY_FILE = $$QMAKE_COPY
|
||||
QMAKE_COPY_DIR = $$QMAKE_COPY -R
|
||||
QMAKE_MOVE = mv -f
|
||||
QMAKE_DEL_FILE = rm -f
|
||||
QMAKE_DEL_DIR = rmdir
|
||||
QMAKE_DEL_TREE = rm -rf
|
||||
QMAKE_CHK_EXISTS = test -e %1 ||
|
||||
QMAKE_CHK_DIR_EXISTS = test -d # legacy
|
||||
QMAKE_MKDIR = mkdir -p # legacy
|
||||
QMAKE_MKDIR_CMD = test -d %1 || mkdir -p %1
|
||||
QMAKE_STREAM_EDITOR = sed
|
||||
|
||||
equals(QMAKE_HOST.os, Windows) {
|
||||
MINGW_IN_SHELL = 1 # legacy
|
||||
# Override built-ins.
|
||||
QMAKE_DIR_SEP = /
|
||||
QMAKE_DIRLIST_SEP = :
|
||||
# Because install's ability to set permissions is not relevant on Windows,
|
||||
# and git's msys does not provide it to start with.
|
||||
QMAKE_INSTALL_FILE = cp -f
|
||||
QMAKE_INSTALL_PROGRAM = cp -f
|
||||
} else {
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
}
|
||||
}
|
||||
QMAKE_INSTALL_DIR = $$QMAKE_COPY_DIR
|
||||
equals(QMAKE_HOST.os, Windows) {
|
||||
# Ugly (and broken for relative paths) hack to support cross-building for Unix.
|
||||
QMAKE_SYMBOLIC_LINK = $$QMAKE_COPY
|
||||
QMAKE_LN_SHLIB = $$QMAKE_SYMBOLIC_LINK
|
||||
} else {
|
||||
QMAKE_SYMBOLIC_LINK = ln -f -s
|
||||
QMAKE_LN_SHLIB = ln -s
|
||||
}
|
||||
|
|
|
@ -45,8 +45,6 @@ QMAKE_RANLIB =
|
|||
|
||||
QMAKE_STRIP = strip
|
||||
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
|
||||
include(../common/unix.conf)
|
||||
include(../common/gcc-base-unix.conf)
|
||||
|
|
|
@ -109,8 +109,6 @@ QMAKE_RANLIB =
|
|||
|
||||
QMAKE_STRIP = host-strip
|
||||
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
|
||||
include(../../common/unix.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -87,8 +87,6 @@ QMAKE_RANLIB =
|
|||
|
||||
QMAKE_STRIP = strip
|
||||
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
|
||||
include(../../common/unix.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -86,8 +86,6 @@ QMAKE_RANLIB =
|
|||
|
||||
QMAKE_STRIP = strip
|
||||
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
|
||||
QMAKE_INSTALL_FILE = install -m 644 -p
|
||||
QMAKE_INSTALL_PROGRAM = install -m 755 -p
|
||||
|
||||
include(../../common/unix.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -93,19 +93,6 @@ QMAKE_LIBS_OPENGL_ES2_DEBUG = -llibEGLd -llibGLESv2d -lgdi32 -luser32
|
|||
QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
|
||||
QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
|
||||
|
||||
!isEmpty(QMAKE_SH) {
|
||||
MINGW_IN_SHELL = 1
|
||||
QMAKE_DIR_SEP = /
|
||||
QMAKE_DIRLIST_SEP = :
|
||||
include(../common/shell-unix.conf)
|
||||
# Because install's ability to set permissions is not relevant on Windows,
|
||||
# and git's msys does not provide it to start with.
|
||||
QMAKE_INSTALL_FILE = cp -f
|
||||
QMAKE_INSTALL_PROGRAM = cp -f
|
||||
} else {
|
||||
include(../common/shell-win32.conf)
|
||||
}
|
||||
|
||||
QMAKE_IDL = midl
|
||||
QMAKE_LIB = $${CROSS_COMPILE}ar -ru
|
||||
QMAKE_RC = $${CROSS_COMPILE}windres
|
||||
|
|
|
@ -79,7 +79,5 @@ QMAKE_IDL = midl
|
|||
QMAKE_LIB = xilib /NOLOGO
|
||||
QMAKE_RC = rc
|
||||
|
||||
include(../common/shell-win32.conf)
|
||||
|
||||
DSP_EXTENSION = .dsp
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1400
|
||||
MSVC_VER = 8.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1500
|
||||
MSVC_VER = 9.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1600
|
||||
MSVC_VER = 10.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1700
|
||||
MSVC_VER = 11.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1800
|
||||
MSVC_VER = 12.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -7,5 +7,4 @@
|
|||
MSC_VER = 1900
|
||||
MSVC_VER = 14.0
|
||||
include(../common/msvc-desktop.conf)
|
||||
include(../common/shell-win32.conf)
|
||||
load(qt_config)
|
||||
|
|
|
@ -58,22 +58,8 @@ UnixMakefileGenerator::init()
|
|||
project->values("ICON") = project->values("RC_FILE");
|
||||
if(project->isEmpty("QMAKE_EXTENSION_PLUGIN"))
|
||||
project->values("QMAKE_EXTENSION_PLUGIN").append(project->first("QMAKE_EXTENSION_SHLIB"));
|
||||
if(project->isEmpty("QMAKE_COPY_FILE"))
|
||||
project->values("QMAKE_COPY_FILE").append("$(COPY)");
|
||||
if(project->isEmpty("QMAKE_STREAM_EDITOR"))
|
||||
project->values("QMAKE_STREAM_EDITOR").append("sed");
|
||||
if(project->isEmpty("QMAKE_COPY_DIR"))
|
||||
project->values("QMAKE_COPY_DIR").append("$(COPY) -R");
|
||||
if(project->isEmpty("QMAKE_INSTALL_FILE"))
|
||||
project->values("QMAKE_INSTALL_FILE").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_DIR"))
|
||||
project->values("QMAKE_INSTALL_DIR").append("$(COPY_DIR)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_PROGRAM"))
|
||||
project->values("QMAKE_INSTALL_PROGRAM").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_LIBTOOL"))
|
||||
project->values("QMAKE_LIBTOOL").append("libtool --silent");
|
||||
if(project->isEmpty("QMAKE_SYMBOLIC_LINK"))
|
||||
project->values("QMAKE_SYMBOLIC_LINK").append("ln -f -s");
|
||||
|
||||
project->values("QMAKE_ORIG_TARGET") = project->values("TARGET");
|
||||
|
||||
|
|
|
@ -1298,8 +1298,6 @@ void UnixMakefileGenerator::init2()
|
|||
else
|
||||
project->values("TARGET") = project->values("TARGET_x.y.z");
|
||||
}
|
||||
if(project->isEmpty("QMAKE_LN_SHLIB"))
|
||||
project->values("QMAKE_LN_SHLIB").append("ln -s");
|
||||
if (!project->values("QMAKE_LFLAGS_SONAME").isEmpty()) {
|
||||
ProString soname;
|
||||
if(project->isActiveConfig("plugin")) {
|
||||
|
|
|
@ -232,16 +232,6 @@ void MingwMakefileGenerator::init()
|
|||
project->values("QMAKE_LIB_FLAG").append("1");
|
||||
else if(project->first("TEMPLATE") == "subdirs") {
|
||||
MakefileGenerator::init();
|
||||
if(project->isEmpty("QMAKE_COPY_FILE"))
|
||||
project->values("QMAKE_COPY_FILE").append("$(COPY)");
|
||||
if(project->isEmpty("QMAKE_COPY_DIR"))
|
||||
project->values("QMAKE_COPY_DIR").append("xcopy /s /q /y /i");
|
||||
if(project->isEmpty("QMAKE_INSTALL_FILE"))
|
||||
project->values("QMAKE_INSTALL_FILE").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_PROGRAM"))
|
||||
project->values("QMAKE_INSTALL_PROGRAM").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_DIR"))
|
||||
project->values("QMAKE_INSTALL_DIR").append("$(COPY_DIR)");
|
||||
if(project->values("MAKEFILE").isEmpty())
|
||||
project->values("MAKEFILE").append("Makefile");
|
||||
return;
|
||||
|
|
|
@ -340,16 +340,6 @@ void NmakeMakefileGenerator::init()
|
|||
MakefileGenerator::init();
|
||||
if(project->values("MAKEFILE").isEmpty())
|
||||
project->values("MAKEFILE").append("Makefile");
|
||||
if(project->isEmpty("QMAKE_COPY_FILE"))
|
||||
project->values("QMAKE_COPY_FILE").append("$(COPY)");
|
||||
if(project->isEmpty("QMAKE_COPY_DIR"))
|
||||
project->values("QMAKE_COPY_DIR").append("xcopy /s /q /y /i");
|
||||
if(project->isEmpty("QMAKE_INSTALL_FILE"))
|
||||
project->values("QMAKE_INSTALL_FILE").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_PROGRAM"))
|
||||
project->values("QMAKE_INSTALL_PROGRAM").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_DIR"))
|
||||
project->values("QMAKE_INSTALL_DIR").append("$(COPY_DIR)");
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -280,19 +280,6 @@ void Win32MakefileGenerator::processVars()
|
|||
&& !project->values("VER_MAJ").isEmpty())
|
||||
project->values("TARGET_VERSION_EXT").append(project->first("VER_MAJ"));
|
||||
|
||||
if(project->isEmpty("QMAKE_COPY_FILE"))
|
||||
project->values("QMAKE_COPY_FILE").append("$(COPY)");
|
||||
if(project->isEmpty("QMAKE_COPY_DIR"))
|
||||
project->values("QMAKE_COPY_DIR").append("xcopy /s /q /y /i");
|
||||
if (project->isEmpty("QMAKE_STREAM_EDITOR"))
|
||||
project->values("QMAKE_STREAM_EDITOR").append("$(QMAKE) -install sed");
|
||||
if(project->isEmpty("QMAKE_INSTALL_FILE"))
|
||||
project->values("QMAKE_INSTALL_FILE").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_PROGRAM"))
|
||||
project->values("QMAKE_INSTALL_PROGRAM").append("$(COPY_FILE)");
|
||||
if(project->isEmpty("QMAKE_INSTALL_DIR"))
|
||||
project->values("QMAKE_INSTALL_DIR").append("$(COPY_DIR)");
|
||||
|
||||
fixTargetExt();
|
||||
processRcFileVar();
|
||||
|
||||
|
|
Loading…
Reference in New Issue