summaryrefslogtreecommitdiffstats
path: root/demos/spectrum/app/app.pro
diff options
context:
space:
mode:
Diffstat (limited to 'demos/spectrum/app/app.pro')
-rw-r--r--demos/spectrum/app/app.pro121
1 files changed, 121 insertions, 0 deletions
diff --git a/demos/spectrum/app/app.pro b/demos/spectrum/app/app.pro
new file mode 100644
index 0000000..2adb605
--- /dev/null
+++ b/demos/spectrum/app/app.pro
@@ -0,0 +1,121 @@
+include(../spectrum.pri)
+
+TEMPLATE = app
+
+TARGET = spectrum
+unix: !macx: !symbian: TARGET = spectrum.bin
+
+QT += multimedia
+
+SOURCES += main.cpp \
+ engine.cpp \
+ frequencyspectrum.cpp \
+ levelmeter.cpp \
+ mainwidget.cpp \
+ progressbar.cpp \
+ settingsdialog.cpp \
+ spectrograph.cpp \
+ spectrumanalyser.cpp \
+ tonegenerator.cpp \
+ tonegeneratordialog.cpp \
+ utils.cpp \
+ waveform.cpp \
+ wavfile.cpp
+
+HEADERS += engine.h \
+ frequencyspectrum.h \
+ levelmeter.h \
+ mainwidget.h \
+ progressbar.h \
+ settingsdialog.h \
+ spectrograph.h \
+ spectrum.h \
+ spectrumanalyser.h \
+ tonegenerator.h \
+ tonegeneratordialog.h \
+ utils.h \
+ waveform.h \
+ wavfile.h
+
+fftreal_dir = ../3rdparty/fftreal
+
+INCLUDEPATH += $${fftreal_dir}
+
+RESOURCES = spectrum.qrc
+
+symbian {
+ # Platform security capability required to record audio on Symbian
+ TARGET.CAPABILITY += UserEnvironment
+
+ # Provide unique ID for the generated binary, required by Symbian OS
+ TARGET.UID3 = 0xA000E3FA
+}
+
+
+# Dynamic linkage against FFTReal DLL
+!contains(DEFINES, DISABLE_FFT) {
+ symbian {
+ # Must explicitly add the .dll suffix to ensure dynamic linkage
+ LIBS += -lfftreal.dll
+ } else {
+ macx {
+ # Link to fftreal framework
+ LIBS += -F$${fftreal_dir}
+ LIBS += -framework fftreal
+ } else {
+ # Link to dynamic library which is written to ../bin
+ LIBS += -L../bin
+ LIBS += -lfftreal
+ }
+ }
+}
+
+
+# Deployment
+
+symbian {
+ include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)
+
+ !contains(DEFINES, DISABLE_FFT) {
+ # Include FFTReal DLL in the SIS file
+ fftreal.sources = $${EPOCROOT}epoc32/release/$(PLATFORM)/$(TARGET)/fftreal.dll
+ fftreal.path = !:/sys/bin
+ DEPLOYMENT += fftreal
+ }
+} else {
+ macx {
+ # Specify directory in which to create spectrum.app bundle
+ DESTDIR = ..
+
+ !contains(DEFINES, DISABLE_FFT) {
+ # Relocate fftreal.framework into spectrum.app bundle
+ framework_dir = ../spectrum.app/Contents/Frameworks
+ framework_name = fftreal.framework/Versions/1/fftreal
+ QMAKE_POST_LINK = \
+ mkdir -p $${framework_dir} &&\
+ rm -rf $${framework_dir}/fftreal.framework &&\
+ cp -R $${fftreal_dir}/fftreal.framework $${framework_dir} &&\
+ install_name_tool -id @executable_path/../Frameworks/$${framework_name} \
+ $${framework_dir}/$${framework_name} &&\
+ install_name_tool -change $${framework_name} \
+ @executable_path/../Frameworks/$${framework_name} \
+ ../spectrum.app/Contents/MacOS/spectrum
+ }
+ } else {
+ # Specify directory in which to create spectrum application
+ DESTDIR = ../bin
+
+ unix: !symbian {
+ # On unices other than Mac OSX, we copy a shell script into the bin directory.
+ # This script takes care of correctly setting the LD_LIBRARY_PATH so that
+ # the dynamic library can be located.
+ copy_launch_script.target = copy_launch_script
+ copy_launch_script.commands = \
+ install -m 0555 spectrum.sh ../bin/spectrum
+ QMAKE_EXTRA_TARGETS += copy_launch_script
+ POST_TARGETDEPS += copy_launch_script
+ }
+ }
+}
+
+