Qt6 (#669)
* update qt6 upgrade progress * add flawed addition for QRenderTarget and link needed libs * update to better logging format * move many assets and qml files into qrc * get rid of deprecation messages * remove additional deprecation notices * make Qt6 finally render on desktop with some progress on vr * initialize QRhi with QQuickRenderControl * use default values to stop SegFaults * fix compilation on windows * add windows files for aiding in running exe * fix formatting of testing qt.conf * first attempt on using textures instead of files in AudioTabController * Fix public/private access issue --------- Co-authored-by: RTUnreal <unreal@rtinf.net>
This commit is contained in:
@@ -1,16 +0,0 @@
|
||||
QMAKE_CXXFLAGS += -Wextra
|
||||
|
||||
QMAKE_CXXFLAGS += -Wshadow
|
||||
|
||||
QMAKE_CXXFLAGS += -Wold-style-cast
|
||||
|
||||
QMAKE_CXXFLAGS += -Wnon-virtual-dtor
|
||||
|
||||
QMAKE_CXXFLAGS += -Wcast-align -Wunused -Woverloaded-virtual -Wformat=2
|
||||
|
||||
QMAKE_CXXFLAGS += -Wdouble-promotion
|
||||
|
||||
# Enable Link Time Optimization
|
||||
QMAKE_CXXFLAGS += -flto
|
||||
# Clang LTO requires the gold linker instead of ld
|
||||
QMAKE_LFLAGS += -flto -fuse-ld=gold
|
||||
@@ -1,18 +0,0 @@
|
||||
include(common-msvc.pri)
|
||||
|
||||
#win32-clang-msvc is unable to correctly build the first time
|
||||
#with warnings as errors on. There seems to be an issue with the moc_predefs.h
|
||||
#file not being built correctly when /WX is on. Until the issue is fixed,
|
||||
#win32-clang-msvc is built without /WX.
|
||||
|
||||
#clang-msvc does not enable the c++17 flag with qmake's c++1z flag.
|
||||
QMAKE_CXXFLAGS += /std:c++17
|
||||
|
||||
include(clang-gcc-common-switches.pri)
|
||||
|
||||
QMAKE_CXXFLAGS += -Wmost
|
||||
|
||||
QMAKE_CXXFLAGS += -Weffc++ -Wmissing-variable-declarations
|
||||
|
||||
#clang-msvc spams warnings on -Wconversion and -Wsign-conversion
|
||||
# from the moc .cpp files including Qt stuff.
|
||||
@@ -1,62 +0,0 @@
|
||||
# comments are the value of CLANG_VERSION
|
||||
CLANG_VERSION = $$system("clang++ --version | grep 'clang version'")
|
||||
# clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
|
||||
CLANG_VERSION = $$split(CLANG_VERSION, ' ')
|
||||
# CLANG_VERSION is now a list, this is shown as spaces in QMAKE
|
||||
# clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
|
||||
CLANG_VERSION = $$member(CLANG_VERSION, 2)
|
||||
# 6.0.0-1ubuntu2
|
||||
CLANG_VERSION = $$split(CLANG_VERSION, '.')
|
||||
# 6 0 0-1ubuntu2
|
||||
CLANG_VERSION = $$member(CLANG_VERSION, 0)
|
||||
# 6
|
||||
|
||||
greaterThan(CLANG_VERSION, 4) {
|
||||
message('clang++' version is above 4. Using regular clang++.)
|
||||
QMAKE_CXX = clang++
|
||||
QMAKE_LINK = clang++
|
||||
}
|
||||
else {
|
||||
message('clang++' version is not above 4. Attempting to use highest specific version.)
|
||||
system("clang++-5 --version") {
|
||||
QMAKE_CXX = clang++-5
|
||||
QMAKE_LINK = clang++-5
|
||||
message('clang++-5' found.)
|
||||
}
|
||||
system("clang++-6 --version") {
|
||||
QMAKE_CXX = clang++-6
|
||||
QMAKE_LINK = clang++-6
|
||||
message('clang++-6' found.)
|
||||
}
|
||||
system("clang++-7 --version") {
|
||||
QMAKE_CXX = clang++-7
|
||||
QMAKE_LINK = clang++-7
|
||||
message('clang++-7' found.)
|
||||
}
|
||||
system("clang++-8 --version") {
|
||||
QMAKE_CXX = clang++-8
|
||||
QMAKE_LINK = clang++-8
|
||||
message('clang++-8' found.)
|
||||
}
|
||||
}
|
||||
|
||||
system("$$QMAKE_CXX --version")
|
||||
|
||||
include(clang-gcc-common-switches.pri)
|
||||
|
||||
QMAKE_CXXFLAGS += -Wmost
|
||||
|
||||
QMAKE_CXXFLAGS += -Wpedantic
|
||||
|
||||
warnings_as_errors {
|
||||
QMAKE_CXXFLAGS += -Werror
|
||||
}
|
||||
|
||||
#All includes from the third-party directory will not warn.
|
||||
QMAKE_CXXFLAGS += --system-header-prefix=third-party
|
||||
QMAKE_CXXFLAGS += --system-header-prefix=qt
|
||||
|
||||
# Sign conversion warns on auto generated Qt MOC files.
|
||||
QMAKE_CXXFLAGS += -Weffc++ -Wconversion -Wno-sign-conversion
|
||||
|
||||
QMAKE_CXXFLAGS += -Wextra-semi -Wzero-as-null-pointer-constant -Wmissing-variable-declarations
|
||||
@@ -1,49 +0,0 @@
|
||||
#Removing -W3 from both FLAGS is necessary, otherwise compiler will give
|
||||
#D9025: overriding '/W4' with '/W3'
|
||||
QMAKE_CFLAGS_WARN_ON -= -W3
|
||||
QMAKE_CXXFLAGS_WARN_ON -= -W3
|
||||
#C4127 is a warning in qvarlengtharray.h that can not be turned off
|
||||
#on the current version of MSVC.
|
||||
QMAKE_CXXFLAGS += /W4 /wd4127
|
||||
# The codecvt header being used in AudioManagerWindows.cpp is deprecated by the standard,
|
||||
# but no suitable replacement has been standardized yet. It is possible to use the Windows
|
||||
# specific MultiByteToWideChar() and WideCharToMultiByte() from <Windows.h>
|
||||
DEFINES += _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING
|
||||
|
||||
# Enables Whole Program Optimization
|
||||
QMAKE_CXXFLAGS += /Gw
|
||||
|
||||
# 'operator': conversion from 'type1:field_bits' to 'type2:field_bits', possible loss of data
|
||||
QMAKE_CXXFLAGS += /w14254
|
||||
# 'function': member function does not override any base class virtual member function
|
||||
QMAKE_CXXFLAGS += /w14263
|
||||
# 'classname': class has virtual functions, but destructor is not virtual instances of this class may not be destructed correctly
|
||||
QMAKE_CXXFLAGS += /w14265
|
||||
# 'operator': unsigned/negative constant mismatch
|
||||
QMAKE_CXXFLAGS += /w14287
|
||||
# nonstandard extension used: 'variable': loop control variable declared in the for-loop is used outside the for-loop scope
|
||||
QMAKE_CXXFLAGS += /we4289
|
||||
# 'operator': expression is always 'boolean_value'
|
||||
QMAKE_CXXFLAGS += /w14296
|
||||
# 'variable': pointer truncation from 'type1' to 'type2'
|
||||
QMAKE_CXXFLAGS += /w14311
|
||||
# expression before comma evaluates to a function which is missing an argument list
|
||||
QMAKE_CXXFLAGS += /w14545
|
||||
# function call before comma missing argument list
|
||||
QMAKE_CXXFLAGS += /w14546
|
||||
# 'operator': operator before comma has no effect; expected operator with side-effect
|
||||
QMAKE_CXXFLAGS += /w14547
|
||||
# 'operator': operator before comma has no effect; did you intend 'operator'?
|
||||
QMAKE_CXXFLAGS += /w14549
|
||||
# expression has no effect; expected expression with side-effect
|
||||
QMAKE_CXXFLAGS += /w14555
|
||||
# Enable warning on thread un-safe static member initialization
|
||||
QMAKE_CXXFLAGS += /w14640
|
||||
# Conversion from 'type1' to 'type_2' is sign-extended. This may cause unexpected runtime behavior.
|
||||
QMAKE_CXXFLAGS += /w14826
|
||||
# wide string literal cast to 'LPSTR'
|
||||
QMAKE_CXXFLAGS += /w14905
|
||||
# string literal cast to 'LPWSTR'
|
||||
QMAKE_CXXFLAGS += /w14906
|
||||
# illegal copy-initialization; more than one user-defined conversion has been implicitly applied
|
||||
QMAKE_CXXFLAGS += /w14928
|
||||
@@ -1,44 +0,0 @@
|
||||
GCC_VERSION = $$system("g++ -dumpversion")
|
||||
greaterThan(GCC_VERSION, 6) {
|
||||
message('g++' version is above 6. Using regular g++.)
|
||||
}
|
||||
else {
|
||||
message('g++' version is not above 6. Attempting to use highest specific version.)
|
||||
system(g++-7 --version) {
|
||||
message('g++-7' found.)
|
||||
QMAKE_CXX = g++-7
|
||||
QMAKE_LINK = g++-7
|
||||
}
|
||||
system(g++-8 --version) {
|
||||
message('g++-8' found.)
|
||||
QMAKE_CXX = g++-8
|
||||
QMAKE_LINK = g++-8
|
||||
}
|
||||
system(g++-9 --version) {
|
||||
message('g++-9' found.)
|
||||
QMAKE_CXX = g++-9
|
||||
QMAKE_LINK = g++-9
|
||||
}
|
||||
}
|
||||
|
||||
system("$$QMAKE_CXX --version")
|
||||
|
||||
include(clang-gcc-common-switches.pri)
|
||||
|
||||
QMAKE_CXXFLAGS += -Wpedantic
|
||||
|
||||
warnings_as_errors {
|
||||
QMAKE_CXXFLAGS += -Werror
|
||||
}
|
||||
|
||||
# GCC only switches
|
||||
QMAKE_CXXFLAGS += -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wrestrict -Wnull-dereference
|
||||
|
||||
# Sign conversion warns on auto generated Qt MOC files.
|
||||
QMAKE_CXXFLAGS += -Wconversion -Wno-sign-conversion
|
||||
|
||||
QMAKE_CXXFLAGS += -Wzero-as-null-pointer-constant
|
||||
|
||||
# Qmake will append this even though higher optimization levels are used.
|
||||
QMAKE_LFLAGS_RELEASE -= -Wl,-O1
|
||||
QMAKE_LFLAGS += -Wl,-O3 -O3
|
||||
@@ -1,12 +0,0 @@
|
||||
include(common-msvc.pri)
|
||||
|
||||
warnings_as_errors {
|
||||
# Warnings as errors
|
||||
QMAKE_CXXFLAGS += /WX
|
||||
}
|
||||
|
||||
# Enables Link Time Optimization
|
||||
QMAKE_CXXFLAGS += /GL
|
||||
|
||||
# Force standards-conformance
|
||||
QMAKE_CXXFLAGS += /permissive-
|
||||
Reference in New Issue
Block a user