Chris@334: Chris@334: CONFIG += c++14 Chris@260: Chris@260: CONFIG += release Chris@334: #CONFIG += debug Chris@260: Chris@334: PREFIX_PATH = /usr/local Chris@260: Chris@260: DEFINES += NDEBUG BUILD_RELEASE Chris@260: DEFINES += NO_TIMING Chris@260: Chris@260: # Full set of defines expected for all platforms when we have the Chris@260: # sv-dependency-builds subrepo available to provide the dependencies. Chris@260: Chris@260: DEFINES += \ Chris@260: HAVE_BZ2 \ Chris@260: HAVE_FFTW3 \ Chris@260: HAVE_FFTW3F \ Chris@260: HAVE_SNDFILE \ Chris@260: HAVE_SAMPLERATE \ Chris@260: HAVE_MAD \ Chris@334: HAVE_ID3TAG \ Chris@334: HAVE_OPUS Chris@334: Chris@260: # Default set of libs for the above. Config sections below may update Chris@260: # these. Chris@260: Chris@260: LIBS += \ Chris@328: -lbase \ Chris@260: -lbz2 \ Chris@260: -lrubberband \ Chris@260: -lfftw3 \ Chris@260: -lfftw3f \ Chris@260: -lsndfile \ Chris@260: -lFLAC \ Chris@260: -logg \ Chris@260: -lvorbis \ Chris@260: -lvorbisenc \ Chris@260: -lvorbisfile \ Chris@334: -lopusfile \ Chris@334: -lopus \ Chris@260: -logg \ Chris@260: -lmad \ Chris@260: -lid3tag \ Chris@260: -lsamplerate \ Chris@260: -lz \ Chris@260: -lsord-0 \ Chris@260: -lserd-0 Chris@260: Chris@260: win32-g++ { Chris@260: Chris@260: # This config is currently used for 32-bit Windows builds. Chris@260: Chris@338: INCLUDEPATH += $$PWD/sv-dependency-builds/win32-mingw/include $$PWD/sv-dependency-builds/win32-mingw/include/opus Chris@260: Chris@328: LIBS += -Lrelease -L$$PWD/sv-dependency-builds/win32-mingw/lib Chris@260: Chris@328: DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE Chris@260: Chris@260: QMAKE_CXXFLAGS_RELEASE += -ffast-math Chris@260: Chris@339: # (We don't have MediaFoundation support, with this build sadly) Chris@339: Chris@339: LIBS += -lwinmm -lws2_32 Chris@260: } Chris@260: Chris@260: win32-msvc* { Chris@260: Chris@260: # This config is actually used only for 64-bit Windows builds. Chris@260: # even though the qmake spec is still called win32-msvc*. If Chris@260: # we want to do 32-bit builds with MSVC as well, then we'll Chris@260: # need to add a way to distinguish the two. Chris@260: Chris@338: INCLUDEPATH += $$PWD/sv-dependency-builds/win64-msvc/include $$PWD/sv-dependency-builds/win64-msvc/include/opus Chris@260: Chris@260: CONFIG(release) { Chris@339: LIBS += -NODEFAULTLIB:LIBCMT -Lrelease \ Chris@328: -L$$PWD/sv-dependency-builds/win64-msvc/lib Chris@260: } Chris@260: Chris@339: DEFINES += NOMINMAX _USE_MATH_DEFINES HAVE_MEDIAFOUNDATION Chris@260: Chris@328: QMAKE_CXXFLAGS_RELEASE += -fp:fast -gl Chris@328: QMAKE_LFLAGS_RELEASE += -ltcg Chris@260: Chris@260: # No Ogg/FLAC support in the sndfile build on this platform yet Chris@339: LIBS -= -lFLAC -lvorbis -lvorbisenc -lvorbisfile Chris@260: Chris@260: # These have different names Chris@260: LIBS -= -lsord-0 -lserd-0 Chris@260: LIBS += -lsord -lserd Chris@260: Chris@334: LIBS += -lmfplat -lmfreadwrite -lmfuuid -lpropsys -ladvapi32 -lwinmm -lws2_32 Chris@260: } Chris@260: Chris@260: macx* { Chris@260: Chris@260: # All Mac builds are 64-bit these days. Chris@260: Chris@334: INCLUDEPATH += $$PWD/sv-dependency-builds/osx/include $$PWD/sv-dependency-builds/osx/include/opus Chris@328: LIBS += -L$$PWD/sv-dependency-builds/osx/lib -L$$PWD Chris@260: Chris@334: QMAKE_CXXFLAGS_RELEASE += -O3 -ffast-math -flto Chris@339: QMAKE_LFLAGS_RELEASE += -O3 -flto Chris@260: Chris@334: DEFINES += HAVE_COREAUDIO HAVE_VDSP Chris@260: LIBS += \ cannam@283: -framework CoreAudio \ cannam@283: -framework CoreMidi \ cannam@283: -framework AudioUnit \ cannam@283: -framework AudioToolbox \ Chris@260: -framework CoreFoundation \ Chris@260: -framework CoreServices \ Chris@260: -framework Accelerate Chris@260: } Chris@260: Chris@260: linux* { Chris@260: Chris@260: message("Building without ./configure on Linux is unlikely to work") Chris@260: message("If you really want to try it, remove this from noconfig.pri") Chris@260: error("Refusing to build without ./configure first") Chris@260: } Chris@260: