Chris@540: Chris@690: win32-msvc* { Chris@690: # Necessary for WinRT header used to determine background colour Chris@690: CONFIG += c++17 Chris@690: } Chris@690: !win32-msvc* { Chris@690: CONFIG += c++14 Chris@690: } Chris@525: Chris@525: CONFIG += release Chris@525: Chris@525: #CONFIG -= release Chris@525: #CONFIG += debug Chris@525: Chris@540: PREFIX_PATH = /usr/local Chris@540: Chris@525: DEFINES += NDEBUG BUILD_RELEASE Chris@525: DEFINES += NO_TIMING NO_HIT_COUNTS Chris@525: Chris@525: # Full set of defines expected for all platforms when we have the Chris@525: # sv-dependency-builds subrepo available to provide the dependencies. Chris@525: Chris@525: DEFINES += \ Chris@525: HAVE_BZ2 \ Chris@525: HAVE_FFTW3 \ Chris@525: HAVE_FFTW3F \ Chris@525: HAVE_SNDFILE \ Chris@525: HAVE_SAMPLERATE \ Chris@525: HAVE_RUBBERBAND \ Chris@525: HAVE_LIBLO \ Chris@525: HAVE_MAD \ Chris@525: HAVE_ID3TAG \ Chris@540: HAVE_OPUS \ Chris@525: HAVE_PORTAUDIO Chris@525: Chris@525: # Default set of libs for the above. Config sections below may update Chris@525: # these. Chris@525: Chris@525: LIBS += \ Chris@536: -lbase \ Chris@525: -lbz2 \ Chris@525: -lrubberband \ Chris@525: -lfftw3 \ Chris@525: -lfftw3f \ Chris@525: -lsndfile \ Chris@525: -lFLAC \ Chris@525: -logg \ Chris@525: -lvorbis \ Chris@525: -lvorbisenc \ Chris@525: -lvorbisfile \ Chris@540: -lopusfile \ Chris@540: -lopus \ Chris@525: -logg \ Chris@525: -lmad \ Chris@525: -lid3tag \ Chris@525: -lportaudio \ Chris@525: -lsamplerate \ Chris@525: -lz \ Chris@525: -lsord-0 \ Chris@525: -lserd-0 \ Chris@525: -llo \ Chris@525: -lcapnp \ Chris@525: -lkj Chris@525: Chris@525: win32-g++ { Chris@525: Chris@525: # This config is currently used for 32-bit Windows builds. Chris@525: Chris@548: INCLUDEPATH += $$PWD/sv-dependency-builds/win32-mingw/include $$PWD/sv-dependency-builds/win32-mingw/include/opus Chris@525: Chris@650: INCLUDEPATH += /Libraries/boost_1_71_0 /Libraries/boost_1_69_0 $$PWD/../boost_1_69_0 Chris@555: Chris@536: LIBS += -Lrelease -L$$PWD/sv-dependency-builds/win32-mingw/lib Chris@525: Chris@525: DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE Chris@525: Chris@525: QMAKE_CXXFLAGS_RELEASE += -ffast-math Chris@525: Chris@525: # Don't have liblo Chris@525: DEFINES -= HAVE_LIBLO Chris@525: LIBS -= -llo Chris@525: Chris@540: # (We don't have MediaFoundation support either, with this build sadly) Chris@540: Chris@525: LIBS += -lwinmm -lws2_32 Chris@525: } Chris@525: Chris@525: win32-msvc* { Chris@525: Chris@525: # This config is actually used only for 64-bit Windows builds. Chris@525: # even though the qmake spec is still called win32-msvc*. If Chris@525: # we want to do 32-bit builds with MSVC as well, then we'll Chris@525: # need to add a way to distinguish the two. Chris@525: Chris@540: INCLUDEPATH += $$PWD/sv-dependency-builds/win64-msvc/include $$PWD/sv-dependency-builds/win64-msvc/include/opus Chris@525: Chris@651: INCLUDEPATH += /Libraries/boost_1_71_0 /Libraries/boost_1_69_0 $$PWD/../boost_1_69_0 Chris@555: Chris@525: ## This seems to be intruding even when we're supposed to be release Chris@525: # CONFIG(debug) { Chris@525: # LIBS += -NODEFAULTLIB:MSVCRT -Ldebug \ Chris@587: # -L$$PWD/sv-dependency-builds/win64-msvc/lib/debug \ Chris@587: # -L$$PWD/sv-dependency-builds/win64-msvc/lib Chris@525: # } Chris@525: CONFIG(release) { Chris@565: LIBS += -NODEFAULTLIB:LIBCMT -Lrelease \ Chris@536: -L$$PWD/sv-dependency-builds/win64-msvc/lib Chris@525: } Chris@525: Chris@692: DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE HAVE_MEDIAFOUNDATION _HAS_STD_BYTE=0 Chris@525: Chris@587: QMAKE_CXXFLAGS_RELEASE += -fp:fast Chris@587: Chris@540: LIBS -= -lFLAC -lvorbis -lvorbisenc -lvorbisfile Chris@525: Chris@525: # These have different names Chris@525: LIBS -= -lsord-0 -lserd-0 Chris@525: LIBS += -lsord -lserd Chris@525: Chris@525: # Don't have liblo Chris@525: DEFINES -= HAVE_LIBLO Chris@525: LIBS -= -llo Chris@525: Chris@693: LIBS += -lWindowsApp -lmfplat -lmfreadwrite -lmfuuid -lpropsys -ladvapi32 -lwinmm -lws2_32 Chris@525: } Chris@525: Chris@525: macx* { Chris@525: Chris@525: # All Mac builds are 64-bit these days. Chris@525: Chris@540: INCLUDEPATH += $$PWD/sv-dependency-builds/osx/include $$PWD/sv-dependency-builds/osx/include/opus Chris@558: Chris@558: INCLUDEPATH += /usr/local/opt/boost/include Chris@558: Chris@536: LIBS += -L$$PWD/sv-dependency-builds/osx/lib -L$$PWD Chris@525: Chris@540: QMAKE_CXXFLAGS_RELEASE += -O3 -ffast-math -flto Chris@540: QMAKE_LFLAGS_RELEASE += -O3 -flto Chris@525: Chris@525: DEFINES += HAVE_COREAUDIO HAVE_VDSP Chris@525: LIBS += \ Chris@525: -framework CoreAudio \ Chris@525: -framework CoreMidi \ Chris@525: -framework AudioUnit \ Chris@525: -framework AudioToolbox \ Chris@525: -framework CoreFoundation \ Chris@525: -framework CoreServices \ Chris@525: -framework Accelerate Chris@525: } Chris@525: Chris@525: linux* { Chris@525: Chris@525: message("Building without ./configure on Linux is unlikely to work") Chris@525: message("If you really want to try it, remove this from noconfig.pri") Chris@525: error("Refusing to build without ./configure first") Chris@525: } Chris@525: