annotate noconfig.pri @ 2197:1a9541992121 bqaudiostream

Opus support on Windows (64-bit so far)
author Chris Cannam
date Fri, 25 Jan 2019 12:29:12 +0000
parents d97c264355a5
children be656d45bda0
rev   line source
Chris@1284 1
Chris@1982 2 CONFIG += c++14
Chris@1299 3
Chris@2191 4 #CONFIG += release
Chris@2191 5 CONFIG += debug
Chris@1299 6
Chris@1753 7 PREFIX_PATH = /usr/local
Chris@1753 8
Chris@1284 9 DEFINES += NDEBUG BUILD_RELEASE
Chris@1484 10 DEFINES += NO_TIMING NO_HIT_COUNTS
Chris@1284 11
Chris@1319 12 DEFINES += HAVE_PIPER HAVE_PLUGIN_CHECKER_HELPER
Chris@1319 13
Chris@1292 14 # Full set of defines expected for all platforms when we have the
Chris@1292 15 # sv-dependency-builds subrepo available to provide the dependencies.
Chris@1292 16
Chris@1292 17 DEFINES += \
Chris@1292 18 HAVE_BZ2 \
Chris@1292 19 HAVE_FFTW3 \
Chris@1292 20 HAVE_FFTW3F \
Chris@1292 21 HAVE_SNDFILE \
Chris@1292 22 HAVE_SAMPLERATE \
Chris@1292 23 HAVE_RUBBERBAND \
Chris@1292 24 HAVE_LIBLO \
Chris@1292 25 HAVE_MAD \
Chris@1292 26 HAVE_ID3TAG \
Chris@2192 27 HAVE_OPUS \
Chris@1292 28 HAVE_PORTAUDIO
Chris@1292 29
Chris@1292 30 # Default set of libs for the above. Config sections below may update
Chris@1292 31 # these.
Chris@1292 32
Chris@1292 33 LIBS += \
Chris@1827 34 -lbase \
Chris@1292 35 -lbz2 \
Chris@1292 36 -lfftw3 \
Chris@1292 37 -lfftw3f \
Chris@1292 38 -lsndfile \
Chris@1292 39 -lFLAC \
Chris@1292 40 -logg \
Chris@1292 41 -lvorbis \
Chris@1292 42 -lvorbisenc \
Chris@1292 43 -lvorbisfile \
Chris@2195 44 -lopusfile \
Chris@2195 45 -lopus \
Chris@1292 46 -logg \
Chris@1292 47 -lmad \
Chris@1292 48 -lid3tag \
Chris@1292 49 -lportaudio \
Chris@1292 50 -lsamplerate \
Chris@1292 51 -lz \
Chris@1292 52 -lsord-0 \
Chris@1292 53 -lserd-0 \
Chris@1292 54 -llo \
Chris@1292 55 -lcapnp \
Chris@1292 56 -lkj
Chris@1292 57
Chris@1284 58 win32-g++ {
Chris@1292 59
Chris@1292 60 # This config is currently used for 32-bit Windows builds.
Chris@1292 61
Chris@1827 62 INCLUDEPATH += $$PWD/sv-dependency-builds/win32-mingw/include
Chris@1292 63
Chris@1827 64 LIBS += -Lrelease -L$$PWD/sv-dependency-builds/win32-mingw/lib
Chris@1295 65
Chris@2186 66 DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE HAVE_MEDIAFOUNDATION
Chris@1295 67
Chris@1295 68 QMAKE_CXXFLAGS_RELEASE += -ffast-math
Chris@1292 69
Chris@1292 70 # Don't have liblo
Chris@1292 71 DEFINES -= HAVE_LIBLO
Chris@1292 72 LIBS -= -llo
Chris@1292 73
Chris@2187 74 LIBS += -lmfplat -lmfreadwrite -lmfuuid -lpropsys -lwinmm -lws2_32
Chris@1284 75 }
Chris@1284 76
Chris@1284 77 win32-msvc* {
Chris@1292 78
Chris@1292 79 # This config is actually used only for 64-bit Windows builds.
Chris@1292 80 # even though the qmake spec is still called win32-msvc*. If
Chris@1292 81 # we want to do 32-bit builds with MSVC as well, then we'll
Chris@1292 82 # need to add a way to distinguish the two.
Chris@1292 83
Chris@2197 84 INCLUDEPATH += $$PWD/sv-dependency-builds/win64-msvc/include $$PWD/sv-dependency-builds/win64-msvc/include/opus
Chris@1294 85
Chris@1982 86 # This seems to be intruding even when we're supposed to be release
Chris@1294 87 # CONFIG(debug) {
Chris@1294 88 # LIBS += -NODEFAULTLIB:MSVCRT -Ldebug \
Chris@1982 89 # -L$$PWD/sv-dependency-builds/win64-msvc/lib/debug \
Chris@1982 90 # -L$$PWD/sv-dependency-builds/win64-msvc/lib
Chris@1294 91 # }
Chris@1292 92 CONFIG(release) {
Chris@1292 93 LIBS += -Lrelease \
Chris@1827 94 -L$$PWD/sv-dependency-builds/win64-msvc/lib
Chris@1292 95 }
Chris@1292 96
Chris@2186 97 DEFINES += NOMINMAX _USE_MATH_DEFINES CAPNP_LITE HAVE_MEDIAFOUNDATION
Chris@1294 98
Chris@1839 99 QMAKE_CXXFLAGS_RELEASE += -fp:fast -gl
Chris@1839 100 QMAKE_LFLAGS_RELEASE += -ltcg
Chris@1292 101
Chris@2197 102 LIBS -= -lFLAC -lvorbis -lvorbisenc -lvorbisfile
Chris@1292 103
Chris@1292 104 # These have different names
Chris@1292 105 LIBS -= -lsord-0 -lserd-0
Chris@1292 106 LIBS += -lsord -lserd
Chris@1292 107
Chris@1292 108 # Don't have liblo
Chris@1292 109 DEFINES -= HAVE_LIBLO
Chris@1292 110 LIBS -= -llo
Chris@1292 111
Chris@2187 112 LIBS += -lmfplat -lmfreadwrite -lmfuuid -lpropsys -ladvapi32 -lwinmm -lws2_32
Chris@1284 113 }
Chris@1284 114
Chris@1292 115 macx* {
Chris@1292 116
Chris@1292 117 # All Mac builds are 64-bit these days.
Chris@1292 118
Chris@2195 119 INCLUDEPATH += $$PWD/sv-dependency-builds/osx/include $$PWD/sv-dependency-builds/osx/include/opus
cannam@1830 120 LIBS += -L$$PWD/sv-dependency-builds/osx/lib -L$$PWD
Chris@1292 121
Chris@2106 122 QMAKE_CXXFLAGS_RELEASE += -O3 -ffast-math -flto
Chris@2106 123 QMAKE_LFLAGS_RELEASE += -O3 -flto
Chris@1295 124
Chris@1546 125 DEFINES += HAVE_COREAUDIO HAVE_VDSP
Chris@1292 126 LIBS += \
Chris@1292 127 -framework CoreAudio \
Chris@1292 128 -framework CoreMidi \
Chris@1292 129 -framework AudioUnit \
Chris@1292 130 -framework AudioToolbox \
Chris@1292 131 -framework CoreFoundation \
Chris@1292 132 -framework CoreServices \
Chris@1292 133 -framework Accelerate
Chris@1284 134 }
Chris@1284 135
Chris@1292 136 linux* {
Chris@1284 137
Chris@1292 138 message("Building without ./configure on Linux is unlikely to work")
Chris@1292 139 message("If you really want to try it, remove this from noconfig.pri")
Chris@1292 140 error("Refusing to build without ./configure first")
Chris@1292 141 }
Chris@1284 142