Remove suppression of warnings

Remove suppression of warnings

# This file is a template commmon for all qmake projects.
#
# To use it, define ROOT_DIR variable and include($$ROOT_DIR/common.pri)

# We use some library features that were introduced in Mac OS X 10.8.
# Qt5.6.x sets target OS X version to 10.7 which leads to compile errors.
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9

CONFIG(map_designer) {
  DEFINES *= STANDALONE_APP
  DEFINES *= BUILD_DESIGNER
}

# our own version variables
VERSION_MAJOR = 2
VERSION_MINOR = 4

# qt's variable
VERSION = $${VERSION_MAJOR}.$${VERSION_MINOR}

# ROOT_DIR is in INCLUDEPATH now according to the new include policy.
INCLUDEPATH *= $$ROOT_DIR
# Do not set DEPENDPATH - it causes rebuild all with minor changes.
#DEPENDPATH  *= $$ROOT_DIR
INCLUDEPATH *= $$ROOT_DIR/3party/boost
INCLUDEPATH *= $$ROOT_DIR/3party/glm

# Hack for Qt5 qmake to make it much faster.
# Turns off any external headers modification check (see DEPENDPATH).
# Do not remove depend_includepath in CONFIG. Need to check modifications within ROOT_DIR.
#CONFIG -= depend_includepath

CONFIG *= c++11

# Automatically enable release config for production
CONFIG(production) {
  CONFIG *= release
}

CONFIG(release, debug|release) {
  DEFINES *= RELEASE _RELEASE NDEBUG
  CONFIG(production) {
    CONFIG_NAME = production
  } else {
    CONFIG_NAME = release
  }
} else {
  DEFINES *= DEBUG _DEBUG
  CONFIG_NAME = debug
}

BINARIES_PATH = $$ROOT_DIR/out/$$CONFIG_NAME
TEMP_PATH = $$ROOT_DIR/out/$$CONFIG_NAME/tmp/$$TARGET

DESTDIR = $$BINARIES_PATH
OBJECTS_DIR = $$TEMP_PATH
RCC_DIR = $$TEMP_PATH
MOC_DIR = $$TEMP_PATH
UI_DIR = $$TEMP_PATH

QMAKE_LIBDIR = $$BINARIES_PATH $$QMAKE_LIBDIR

# By default, do not include base QT classes in any project.
QT -= core gui

# Libraries' dependencies hack.
win32-msvc* {
  LIB_EXT = .lib
  LIB_PREFIX =
}
unix|win32-g++|tizen* {
 LIB_EXT = .a
 LIB_PREFIX = lib
}

# Add libraries' dependencies.
for(project, DEPENDENCIES) {
  PRE_TARGETDEPS += $$BINARIES_PATH/$$LIB_PREFIX$$project$$LIB_EXT
  LIBS += -l$$project
}

#INCLUDEPATH += $$ROOT_DIR/3party/protobuf/src/

# Windows-specific options for all projects
win32 {
  DEFINES += _WIN32_WINNT=0x0501
  DEFINES += WINVER=0x0501
  DEFINES += _WIN32_IE=0x0501
  DEFINES += WIN32_LEAN_AND_MEAN=1
  DEFINES += NTDDI_VERSION=0x05010000
  LIBS *= -lShell32
}

win32-msvc* {
  QMAKE_CLEAN += *.user
  DEFINES += _SCL_SECURE_NO_WARNINGS _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_WARNINGS NOMINMAX NO_MIN_MAX BOOST_ALL_NO_LIB
  QMAKE_CXXFLAGS += /Zi /fp:fast
  QMAKE_CFLAGS += /Zi /fp:fast

  QMAKE_CXXFLAGS_RELEASE -= /O2
  # don't set -GL - bug in msvc2008
  QMAKE_CXXFLAGS_RELEASE += /Ox /GF
  # don't set /LTCG - bug in msvc2008
  QMAKE_LFLAGS_RELEASE += /MACHINE:X86

  QMAKE_LFLAGS *= /OPT:REF
  QMAKE_LFLAGS_RELEASE *= /OPT:REF,ICF
  QMAKE_LFLAGS_DEBUG *= /OPT:NOICF

  CONFIG(release, debug|release) {
    DEFINES += _SECURE_SCL=0
  }
}

win32-msvc201* {
  # disable tr1 and c++0x features to avoid build errors
#  DEFINES += _HAS_CPP0X=0
#  DEFINES += BOOST_NO_CXX11_HDR_ARRAY BOOST_NO_CXX11_HDR_TYPEINDEX BOOST_NO_CXX11_SMART_PTR
  QMAKE_CFLAGS *= /wd4100
  QMAKE_CXXFLAGS *= /wd4100
  QMAKE_CFLAGS_RELEASE += /GL
  QMAKE_CXXFLAGS_RELEASE += /GL
  QMAKE_LFLAGS_RELEASE += /LTCG
  QMAKE_LIB += /LTCG
}

# unix also works for Android
unix|win32-g++ {
  LIBS *= -lz
  QMAKE_CXXFLAGS_WARN_ON += -Wno-strict-aliasing -Wsign-compare -Wshorten-64-to-32

  # -Wno-unused-local-typedef is not supported on clang 3.5.
  IS_CLANG35 = $$system( echo | $$QMAKE_CXX -dM -E - | grep '__clang_version__.*3\.5.*' )
  if (isEmpty(IS_CLANG35)){
    QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedef
  }
  # TODO: Check if we really need these warnings on every platform (by syershov).
  *-clang* {
    QMAKE_CXXFLAGS_WARN_ON += -Werror=return-type
  }

tizen{
  QMAKE_CFLAGS_RELEASE -= -O2
  QMAKE_CFLAGS_RELEASE += -O1
  QMAKE_CXXFLAGS_RELEASE -= -O2
  QMAKE_CXXFLAGS_RELEASE += -O1
  QMAKE_CFLAGS_RELEASE *= -ffast-math
  QMAKE_CXXFLAGS_RELEASE *= -ffast-math
} else {
  QMAKE_CFLAGS_RELEASE -= -O2
  QMAKE_CFLAGS_RELEASE += -O3
  QMAKE_CXXFLAGS_RELEASE -= -O2
  QMAKE_CXXFLAGS_RELEASE += -O3
  QMAKE_CFLAGS_RELEASE *= -ffast-math
  QMAKE_CXXFLAGS_RELEASE *= -ffast-math
}

}

linux-* {
  QMAKE_CFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_CXXFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_LFLAGS *= -Wl,--gc-sections -Wl,-Bsymbolic-functions
  linux-g++* {
    QMAKE_CFLAGS_RELEASE *= -ffloat-store
    QMAKE_CXXFLAGS_RELEASE *= -ffloat-store
  }
  # debian build requirements
  CONFIG(production) {
    QMAKE_CFLAGS_RELEASE = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security
    QMAKE_CXXFLAGS_RELEASE = -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security
    QMAKE_LFLAGS *= -Wl,-z,relro
  }

}

android-g++ {
  QMAKE_CFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_CXXFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_LFLAGS *= -Wl,--gc-sections
}

win32-g++ {
  QMAKE_CFLAGS *= -Wextra
  QMAKE_CXXFLAGS *= -Wextra
  QMAKE_LFLAGS *= -s
  QMAKE_LFLAGS_RELEASE *= -O
  LIBS *= -lpthread
}

macx-* {
  QMAKE_LFLAGS *= -dead_strip
  LIBS *= "-framework Foundation" "-framework CFNetwork"

#  macx-clang {
#    QMAKE_CFLAGS_RELEASE -= -O3
#    QMAKE_CFLAGS_RELEASE += -O4 -flto
#    QMAKE_CXXFLAGS_RELEASE -= -O3
#    QMAKE_CXXFLAGS_RELEASE += -O4 -flto
#    QMAKE_LFLAGS_RELEASE += -O4 -flto
#  }
}

CONFIG(production) {
  DEFINES += OMIM_PRODUCTION
} else {
  # enable debugging information for non-production release builds
  unix|win32-g++ {
    QMAKE_CFLAGS_RELEASE += -g
    QMAKE_CXXFLAGS_RELEASE += -g
  } win32-msvc* {
    QMAKE_LFLAGS += /PDB:$${DESTDIR}/$${TARGET}.pdb /DEBUG
  }
}

# Fix boost compilation error
win32* {
    QMAKE_MOC = $$[QT_INSTALL_BINS]/moc.exe -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED
} else {
    QMAKE_MOC = $$[QT_INSTALL_BINS]/moc -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED
}

# Include with private variables.
HEADERS += \
  $$ROOT_DIR/private.h

# Standard includes wrappers.
HEADERS += \
  $$ROOT_DIR/std/algorithm.hpp \
  $$ROOT_DIR/std/array.hpp \
  $$ROOT_DIR/std/atomic.hpp \
  $$ROOT_DIR/std/auto_ptr.hpp \
  $$ROOT_DIR/std/bind.hpp \
  $$ROOT_DIR/std/bitset.hpp \
  $$ROOT_DIR/std/cctype.hpp \
  $$ROOT_DIR/std/cerrno.hpp \
  $$ROOT_DIR/std/chrono.hpp \
  $$ROOT_DIR/std/cmath.hpp \
  $$ROOT_DIR/std/complex.hpp \
  $$ROOT_DIR/std/condition_variable.hpp \
  $$ROOT_DIR/std/cstdarg.hpp \
  $$ROOT_DIR/std/cstdint.hpp \
  $$ROOT_DIR/std/cstdio.hpp \
  $$ROOT_DIR/std/cstdlib.hpp \
  $$ROOT_DIR/std/cstring.hpp \
  $$ROOT_DIR/std/ctime.hpp \
  $$ROOT_DIR/std/deque.hpp \
  $$ROOT_DIR/std/errno.hpp \
  $$ROOT_DIR/std/exception.hpp \
  $$ROOT_DIR/std/fstream.hpp \
  $$ROOT_DIR/std/function.hpp \
  $$ROOT_DIR/std/functional.hpp \
  $$ROOT_DIR/std/future.hpp \
  $$ROOT_DIR/std/initializer_list.hpp \
  $$ROOT_DIR/std/iomanip.hpp \
  $$ROOT_DIR/std/ios.hpp \
  $$ROOT_DIR/std/iostream.hpp \
  $$ROOT_DIR/std/iterator.hpp \
  $$ROOT_DIR/std/iterator_facade.hpp \
  $$ROOT_DIR/std/limits.hpp \
  $$ROOT_DIR/std/list.hpp \
  $$ROOT_DIR/std/map.hpp \
  $$ROOT_DIR/std/msvc_cpp11_workarounds.hpp \
  $$ROOT_DIR/std/mutex.hpp \
  $$ROOT_DIR/std/noncopyable.hpp \
  $$ROOT_DIR/std/numeric.hpp \
  $$ROOT_DIR/std/queue.hpp \
  $$ROOT_DIR/std/set.hpp \
  $$ROOT_DIR/std/shared_array.hpp \
  $$ROOT_DIR/std/shared_ptr.hpp \
  $$ROOT_DIR/std/sstream.hpp \
  $$ROOT_DIR/std/stack.hpp \
  $$ROOT_DIR/std/string.hpp \
  $$ROOT_DIR/std/systime.hpp \
  $$ROOT_DIR/std/target_os.hpp \
  $$ROOT_DIR/std/thread.hpp \
  $$ROOT_DIR/std/transform_iterator.hpp \
  $$ROOT_DIR/std/tuple.hpp \
  $$ROOT_DIR/std/type_traits.hpp \
  $$ROOT_DIR/std/typeinfo.hpp \
  $$ROOT_DIR/std/unique_ptr.hpp \
  $$ROOT_DIR/std/unordered_map.hpp \
  $$ROOT_DIR/std/unordered_set.hpp \
  $$ROOT_DIR/std/utility.hpp \
  $$ROOT_DIR/std/vector.hpp \
  $$ROOT_DIR/std/weak_ptr.hpp \
  $$ROOT_DIR/std/windows.hpp \

# This file is a template commmon for all qmake projects.
#
# To use it, define ROOT_DIR variable and include($$ROOT_DIR/common.pri)

# We use some library features that were introduced in Mac OS X 10.8.
# Qt5.6.x sets target OS X version to 10.7 which leads to compile errors.
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.9

CONFIG(map_designer) {
  DEFINES *= STANDALONE_APP
  DEFINES *= BUILD_DESIGNER
}

# our own version variables
VERSION_MAJOR = 2
VERSION_MINOR = 4

# qt's variable
VERSION = $${VERSION_MAJOR}.$${VERSION_MINOR}

# ROOT_DIR is in INCLUDEPATH now according to the new include policy.
INCLUDEPATH *= $$ROOT_DIR
# Do not set DEPENDPATH - it causes rebuild all with minor changes.
#DEPENDPATH  *= $$ROOT_DIR
INCLUDEPATH *= $$ROOT_DIR/3party/boost
INCLUDEPATH *= $$ROOT_DIR/3party/glm

# Hack for Qt5 qmake to make it much faster.
# Turns off any external headers modification check (see DEPENDPATH).
# Do not remove depend_includepath in CONFIG. Need to check modifications within ROOT_DIR.
#CONFIG -= depend_includepath

CONFIG *= c++11

# Automatically enable release config for production
CONFIG(production) {
  CONFIG *= release
}

CONFIG(release, debug|release) {
  DEFINES *= RELEASE _RELEASE NDEBUG
  CONFIG(production) {
    CONFIG_NAME = production
  } else {
    CONFIG_NAME = release
  }
} else {
  DEFINES *= DEBUG _DEBUG
  CONFIG_NAME = debug
}

BINARIES_PATH = $$ROOT_DIR/out/$$CONFIG_NAME
TEMP_PATH = $$ROOT_DIR/out/$$CONFIG_NAME/tmp/$$TARGET

DESTDIR = $$BINARIES_PATH
OBJECTS_DIR = $$TEMP_PATH
RCC_DIR = $$TEMP_PATH
MOC_DIR = $$TEMP_PATH
UI_DIR = $$TEMP_PATH

QMAKE_LIBDIR = $$BINARIES_PATH $$QMAKE_LIBDIR

# By default, do not include base QT classes in any project.
QT -= core gui

# Libraries' dependencies hack.
win32-msvc* {
  LIB_EXT = .lib
  LIB_PREFIX =
}
unix|win32-g++|tizen* {
 LIB_EXT = .a
 LIB_PREFIX = lib
}

# Add libraries' dependencies.
for(project, DEPENDENCIES) {
  PRE_TARGETDEPS += $$BINARIES_PATH/$$LIB_PREFIX$$project$$LIB_EXT
  LIBS += -l$$project
}

#INCLUDEPATH += $$ROOT_DIR/3party/protobuf/src/

# Windows-specific options for all projects
win32 {
  DEFINES += _WIN32_WINNT=0x0501
  DEFINES += WINVER=0x0501
  DEFINES += _WIN32_IE=0x0501
  DEFINES += WIN32_LEAN_AND_MEAN=1
  DEFINES += NTDDI_VERSION=0x05010000
  LIBS *= -lShell32
}

win32-msvc* {
  QMAKE_CLEAN += *.user
  DEFINES += _SCL_SECURE_NO_WARNINGS _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_WARNINGS NOMINMAX NO_MIN_MAX BOOST_ALL_NO_LIB
  QMAKE_CXXFLAGS += /Zi /fp:fast
  QMAKE_CFLAGS += /Zi /fp:fast

  QMAKE_CXXFLAGS_RELEASE -= /O2
  # don't set -GL - bug in msvc2008
  QMAKE_CXXFLAGS_RELEASE += /Ox /GF
  # don't set /LTCG - bug in msvc2008
  QMAKE_LFLAGS_RELEASE += /MACHINE:X86

  QMAKE_LFLAGS *= /OPT:REF
  QMAKE_LFLAGS_RELEASE *= /OPT:REF,ICF
  QMAKE_LFLAGS_DEBUG *= /OPT:NOICF

  CONFIG(release, debug|release) {
    DEFINES += _SECURE_SCL=0
  }
}

win32-msvc201* {
  # disable tr1 and c++0x features to avoid build errors
#  DEFINES += _HAS_CPP0X=0
#  DEFINES += BOOST_NO_CXX11_HDR_ARRAY BOOST_NO_CXX11_HDR_TYPEINDEX BOOST_NO_CXX11_SMART_PTR
  QMAKE_CFLAGS *= /wd4100
  QMAKE_CXXFLAGS *= /wd4100
  QMAKE_CFLAGS_RELEASE += /GL
  QMAKE_CXXFLAGS_RELEASE += /GL
  QMAKE_LFLAGS_RELEASE += /LTCG
  QMAKE_LIB += /LTCG
}

# unix also works for Android
unix|win32-g++ {
  LIBS *= -lz
  QMAKE_CXXFLAGS_WARN_ON += -Wno-sign-compare -Wno-strict-aliasing -Wno-unused-parameter

  # -Wno-unused-local-typedef is not supported on clang 3.5.
  IS_CLANG35 = $$system( echo | $$QMAKE_CXX -dM -E - | grep '__clang_version__.*3\.5.*' )
  if (isEmpty(IS_CLANG35)){
    QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedef
  }
  # TODO: Check if we really need these warnings on every platform (by syershov).
  *-clang* {
    QMAKE_CXXFLAGS_WARN_ON += -Wno-sign-conversion -Werror=return-type
  }

tizen{
  QMAKE_CFLAGS_RELEASE -= -O2
  QMAKE_CFLAGS_RELEASE += -O1
  QMAKE_CXXFLAGS_RELEASE -= -O2
  QMAKE_CXXFLAGS_RELEASE += -O1
  QMAKE_CFLAGS_RELEASE *= -ffast-math
  QMAKE_CXXFLAGS_RELEASE *= -ffast-math
} else {
  QMAKE_CFLAGS_RELEASE -= -O2
  QMAKE_CFLAGS_RELEASE += -O3
  QMAKE_CXXFLAGS_RELEASE -= -O2
  QMAKE_CXXFLAGS_RELEASE += -O3
  QMAKE_CFLAGS_RELEASE *= -ffast-math
  QMAKE_CXXFLAGS_RELEASE *= -ffast-math
}

}

linux-* {
  QMAKE_CFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_CXXFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_LFLAGS *= -Wl,--gc-sections -Wl,-Bsymbolic-functions
  linux-g++* {
    QMAKE_CFLAGS_RELEASE *= -ffloat-store
    QMAKE_CXXFLAGS_RELEASE *= -ffloat-store
  }
  # debian build requirements
  CONFIG(production) {
    QMAKE_CFLAGS_RELEASE = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security
    QMAKE_CXXFLAGS_RELEASE = -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security
    QMAKE_LFLAGS *= -Wl,-z,relro
  }

}

android-g++ {
  QMAKE_CFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_CXXFLAGS *= -fdata-sections -ffunction-sections
  QMAKE_LFLAGS *= -Wl,--gc-sections
}

win32-g++ {
  QMAKE_CFLAGS *= -Wextra
  QMAKE_CXXFLAGS *= -Wextra
  QMAKE_LFLAGS *= -s
  QMAKE_LFLAGS_RELEASE *= -O
  LIBS *= -lpthread
}

macx-* {
  QMAKE_LFLAGS *= -dead_strip
  LIBS *= "-framework Foundation" "-framework CFNetwork"

#  macx-clang {
#    QMAKE_CFLAGS_RELEASE -= -O3
#    QMAKE_CFLAGS_RELEASE += -O4 -flto
#    QMAKE_CXXFLAGS_RELEASE -= -O3
#    QMAKE_CXXFLAGS_RELEASE += -O4 -flto
#    QMAKE_LFLAGS_RELEASE += -O4 -flto
#  }
}

CONFIG(production) {
  DEFINES += OMIM_PRODUCTION
} else {
  # enable debugging information for non-production release builds
  unix|win32-g++ {
    QMAKE_CFLAGS_RELEASE += -g
    QMAKE_CXXFLAGS_RELEASE += -g
  } win32-msvc* {
    QMAKE_LFLAGS += /PDB:$${DESTDIR}/$${TARGET}.pdb /DEBUG
  }
}

# Fix boost compilation error
win32* {
    QMAKE_MOC = $$[QT_INSTALL_BINS]/moc.exe -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED
} else {
    QMAKE_MOC = $$[QT_INSTALL_BINS]/moc -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED
}

# Include with private variables.
HEADERS += \
  $$ROOT_DIR/private.h

# Standard includes wrappers.
HEADERS += \
  $$ROOT_DIR/std/algorithm.hpp \
  $$ROOT_DIR/std/array.hpp \
  $$ROOT_DIR/std/atomic.hpp \
  $$ROOT_DIR/std/auto_ptr.hpp \
  $$ROOT_DIR/std/bind.hpp \
  $$ROOT_DIR/std/bitset.hpp \
  $$ROOT_DIR/std/cctype.hpp \
  $$ROOT_DIR/std/cerrno.hpp \
  $$ROOT_DIR/std/chrono.hpp \
  $$ROOT_DIR/std/cmath.hpp \
  $$ROOT_DIR/std/complex.hpp \
  $$ROOT_DIR/std/condition_variable.hpp \
  $$ROOT_DIR/std/cstdarg.hpp \
  $$ROOT_DIR/std/cstdint.hpp \
  $$ROOT_DIR/std/cstdio.hpp \
  $$ROOT_DIR/std/cstdlib.hpp \
  $$ROOT_DIR/std/cstring.hpp \
  $$ROOT_DIR/std/ctime.hpp \
  $$ROOT_DIR/std/deque.hpp \
  $$ROOT_DIR/std/errno.hpp \
  $$ROOT_DIR/std/exception.hpp \
  $$ROOT_DIR/std/fstream.hpp \
  $$ROOT_DIR/std/function.hpp \
  $$ROOT_DIR/std/functional.hpp \
  $$ROOT_DIR/std/future.hpp \
  $$ROOT_DIR/std/initializer_list.hpp \
  $$ROOT_DIR/std/iomanip.hpp \
  $$ROOT_DIR/std/ios.hpp \
  $$ROOT_DIR/std/iostream.hpp \
  $$ROOT_DIR/std/iterator.hpp \
  $$ROOT_DIR/std/iterator_facade.hpp \
  $$ROOT_DIR/std/limits.hpp \
  $$ROOT_DIR/std/list.hpp \
  $$ROOT_DIR/std/map.hpp \
  $$ROOT_DIR/std/msvc_cpp11_workarounds.hpp \
  $$ROOT_DIR/std/mutex.hpp \
  $$ROOT_DIR/std/noncopyable.hpp \
  $$ROOT_DIR/std/numeric.hpp \
  $$ROOT_DIR/std/queue.hpp \
  $$ROOT_DIR/std/set.hpp \
  $$ROOT_DIR/std/shared_array.hpp \
  $$ROOT_DIR/std/shared_ptr.hpp \
  $$ROOT_DIR/std/sstream.hpp \
  $$ROOT_DIR/std/stack.hpp \
  $$ROOT_DIR/std/string.hpp \
  $$ROOT_DIR/std/systime.hpp \
  $$ROOT_DIR/std/target_os.hpp \
  $$ROOT_DIR/std/thread.hpp \
  $$ROOT_DIR/std/transform_iterator.hpp \
  $$ROOT_DIR/std/tuple.hpp \
  $$ROOT_DIR/std/type_traits.hpp \
  $$ROOT_DIR/std/typeinfo.hpp \
  $$ROOT_DIR/std/unique_ptr.hpp \
  $$ROOT_DIR/std/unordered_map.hpp \
  $$ROOT_DIR/std/unordered_set.hpp \
  $$ROOT_DIR/std/utility.hpp \
  $$ROOT_DIR/std/vector.hpp \
  $$ROOT_DIR/std/weak_ptr.hpp \
  $$ROOT_DIR/std/windows.hpp \


линуксовый билд

линуксовый билд

QT += xml
TEMPLATE =  lib
CONFIG += plugin
DESTDIR = ../../qrgui/plugins/
MOC_DIR = .moc
RCC_DIR = .moc

win32 | win32-msvc* {
        CONFIG(debug, debug|release) {
                QRXC = ..\..\qrxc\debug\qrxc.exe
        } else:CONFIG(release, debug|release){
                QRXC = ..\..\qrxc\release\qrxc.exe
        } else {
                error(Windows build definitely needs to be fixed)
        }
} else {
        QRXC = ../../qrxc/qrxc
}

!exists($$QREAL_EDITOR_NAME$$quote(\generated\pluginInterface.h)) {
	COMMAND = cd $$QREAL_EDITOR_NAME && $$QRXC $$QREAL_XML
	SYS = $$system($$COMMAND)
}

include(extraCompilers.pri)

SOURCES		+= \
			../../qrgui/umllib/sdfrenderer.cpp \
			../../qrgui/umllib/uml_nodeelement.cpp \
			../../qrgui/umllib/uml_edgeelement.cpp \
			../../qrgui/umllib/uml_element.cpp \
			../../qrgui/kernel/ids.cpp \

HEADERS		+= \
			../../qrgui/umllib/sdfrenderer.h \
			../../qrgui/umllib/uml_nodeelement.h \
			../../qrgui/umllib/uml_edgeelement.h \
			../../qrgui/umllib/uml_element.h \
			../../qrgui/kernel/ids.h \
			../editorinterface.h \

QT += xml
TEMPLATE =  lib
CONFIG += plugin
DESTDIR = ../../qrgui/plugins/
MOC_DIR = .moc
RCC_DIR = .moc

win32 | win32-msvc* {
        CONFIG(debug, debug|release) {
                QRXC = ..\..\qrxc\debug\qrxc.exe
        } else:CONFIG(release, debug|release){
                QRXC = ..\..\qrxc\release\qrxc.exe
        } else {
                error(Windows build definitely needs to be fixed)
        }
} else {
        QRXC = ..\..\qrxc\qrxc
}

COMMAND = cd $$QREAL_EDITOR_NAME && $$QRXC $$QREAL_XML

!exists($$QREAL_EDITOR_NAME$$quote(\generated\pluginInterface.h)) {
	!exists($$QRXC) {
		win32-msvc* {
			MAKE = nmake
		} else {
			win32 {
				MAKE = mingw32-make
			} else {
				MAKE = make
			}
		}
		QRXC_COMMAND = cd ..\qrxc && $${QMAKE_QMAKE} && $$MAKE
		QRXC_SYS = $$system($$QRXC_COMMAND)
	}
	SYS = $$system($$COMMAND)
}

include(extraCompilers.pri)

SOURCES		+= \
			../../qrgui/umllib/sdfrenderer.cpp \
			../../qrgui/umllib/uml_nodeelement.cpp \
			../../qrgui/umllib/uml_edgeelement.cpp \
			../../qrgui/umllib/uml_element.cpp \
			../../qrgui/kernel/ids.cpp \

HEADERS		+= \
			../../qrgui/umllib/sdfrenderer.h \
			../../qrgui/umllib/uml_nodeelement.h \
			../../qrgui/umllib/uml_edgeelement.h \
			../../qrgui/umllib/uml_element.h \
			../../qrgui/kernel/ids.h \
			../editorinterface.h \


fix inclusion of qt_targets.pri in qimportbase.pri

Reviewed-by: Roberto Raggi

TEMPLATE = lib
CONFIG += qt plugin

win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release

isEmpty(TARGETPATH) {
    error("qimportbase.pri: You must provide a TARGETPATH!")
}
isEmpty(TARGET) {
    error("qimportbase.pri: You must provide a TARGET!")
}

QMLDIRFILE = $${_PRO_FILE_PWD_}/qmldir
copy2build.input = QMLDIRFILE
copy2build.output = $$QT_BUILD_TREE/imports/$$TARGETPATH/qmldir
isEmpty(vcproj):copy2build.variable_out = PRE_TARGETDEPS
copy2build.commands = $$QMAKE_COPY ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copy2build.name = COPY ${QMAKE_FILE_IN}
copy2build.CONFIG += no_link
QMAKE_EXTRA_COMPILERS += copy2build

TARGET = $$qtLibraryTarget($$TARGET)
contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols

include(../qt_targets.pri)

wince*:LIBS += $$QMAKE_LIBS_GUI

symbian: {
    TARGET.EPOCALLOWDLLDATA=1
    TARGET.CAPABILITY = All -Tcb
    load(armcc_warnings)
}

TEMPLATE = lib
CONFIG += qt plugin

win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release

isEmpty(TARGETPATH) {
    error("qimportbase.pri: You must provide a TARGETPATH!")
}
isEmpty(TARGET) {
    error("qimportbase.pri: You must provide a TARGET!")
}

QMLDIRFILE = $${_PRO_FILE_PWD_}/qmldir
copy2build.input = QMLDIRFILE
copy2build.output = $$QT_BUILD_TREE/imports/$$TARGETPATH/qmldir
isEmpty(vcproj):copy2build.variable_out = PRE_TARGETDEPS
copy2build.commands = $$QMAKE_COPY ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copy2build.name = COPY ${QMAKE_FILE_IN}
copy2build.CONFIG += no_link
QMAKE_EXTRA_COMPILERS += copy2build

TARGET = $$qtLibraryTarget($$TARGET)
contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols

include(../../qt_targets.pri)

wince*:LIBS += $$QMAKE_LIBS_GUI

symbian: {
    TARGET.EPOCALLOWDLLDATA=1
    TARGET.CAPABILITY = All -Tcb
    load(armcc_warnings)
}


Make use of the new ssh lib feature.

Make use of the new ssh lib feature.

SUPPORT_QT_MAEMO = $$(QTCREATOR_WITH_MAEMO)
!isEmpty(SUPPORT_QT_MAEMO) {
    message("Adding experimental support for Qt/Maemo applications.")
    DEFINES += QTCREATOR_WITH_MAEMO
    DEFINES += USE_SSH_LIB
    INCLUDEPATH += $$PWD/../../../libs/3rdparty/net7ssh/src
    INCLUDEPATH += $$PWD/../../../libs/3rdparty/botan/build
    LIBS += -l$$qtLibraryTarget(Net7ssh) -l$$qtLibraryTarget(Botan)
    HEADERS += $$PWD/maemorunconfiguration.h \
        $$PWD/maemomanager.h \
        $$PWD/maemotoolchain.h \
        $$PWD/maemodeviceconfigurations.h \
        $$PWD/maemosettingspage.h \
        $$PWD/maemosshconnection.h \
        $$PWD/maemosshthread.h \
        $$PWD/maemoruncontrol.h \
        $$PWD/maemorunconfigurationwidget.h
    SOURCES += $$PWD/maemorunconfiguration.cpp \
        $$PWD/maemomanager.cpp \
        $$PWD/maemotoolchain.cpp \
        $$PWD/maemodeviceconfigurations.cpp \
        $$PWD/maemosettingspage.cpp \
        $$PWD/maemosshconnection.cpp \
        $$PWD/maemosshthread.cpp \
        $$PWD/maemoruncontrol.cpp \
        $$PWD/maemorunconfigurationwidget.cpp
    FORMS += $$PWD/maemosettingswidget.ui
    RESOURCES += $$PWD/qt-maemo.qrc
}

SUPPORT_QT_MAEMO = $$(QTCREATOR_WITH_MAEMO)
!isEmpty(SUPPORT_QT_MAEMO) {
    message("Adding experimental support for Qt/Maemo applications.")
    DEFINES += QTCREATOR_WITH_MAEMO
#    DEFINES += USE_SSH_LIB
#    INCLUDEPATH += $$PWD/../../../libs/3rdparty/net7ssh/src
#    INCLUDEPATH += $$PWD/../../../libs/3rdparty/botan/build
#    LIBS += -l$$qtLibraryTarget(Net7ssh) -l$$qtLibraryTarget(Botan)
    HEADERS += $$PWD/maemorunconfiguration.h \
        $$PWD/maemomanager.h \
        $$PWD/maemotoolchain.h \
        $$PWD/maemodeviceconfigurations.h \
        $$PWD/maemosettingspage.h \
        $$PWD/maemosshconnection.h \
        $$PWD/maemosshthread.h \
        $$PWD/maemoruncontrol.h \
        $$PWD/maemorunconfigurationwidget.h
    SOURCES += $$PWD/maemorunconfiguration.cpp \
        $$PWD/maemomanager.cpp \
        $$PWD/maemotoolchain.cpp \
        $$PWD/maemodeviceconfigurations.cpp \
        $$PWD/maemosettingspage.cpp \
        $$PWD/maemosshconnection.cpp \
        $$PWD/maemosshthread.cpp \
        $$PWD/maemoruncontrol.cpp \
        $$PWD/maemorunconfigurationwidget.cpp
    FORMS += $$PWD/maemosettingswidget.ui
    RESOURCES += $$PWD/qt-maemo.qrc
}


remove logger

remove logger

HEADERS += $${PWD}/include/Population.h \
           $${PWD}/include/PopulationConfig.h \
           $${PWD}/include/algorithm/Analysis.h \
           $${PWD}/include/algorithm/Arithmetic.h \
           $${PWD}/include/algorithm/AnalysisAdvanced.h \
           $${PWD}/include/algorithm/Application.h \
           $${PWD}/include/algorithm/Convertor.h \
           $${PWD}/include/algorithm/Draw.h \
           $${PWD}/include/algorithm/Feature.h \
           $${PWD}/include/algorithm/ForEachFunctor.h \
           $${PWD}/include/algorithm/GeometricalTransformation.h \
           $${PWD}/include/algorithm/LinearAlgebra.h \
           $${PWD}/include/algorithm/PDE.h \
           $${PWD}/include/algorithm/PDEAdvanced.h \
           $${PWD}/include/algorithm/Processing.h \
           $${PWD}/include/algorithm/ProcessingAdvanced.h \
           $${PWD}/include/algorithm/ProcessingVideo.h \
           $${PWD}/include/algorithm/RandomGeometry.h \
           $${PWD}/include/algorithm/Representation.h \
           $${PWD}/include/algorithm/Statistics.h \
           $${PWD}/include/algorithm/Visualization.h \
           $${PWD}/include/3rdparty/bipmap.h \
           $${PWD}/include/3rdparty/CImg.h \
           $${PWD}/include/3rdparty/ConvertorCImg.h \
           $${PWD}/include/3rdparty/ConvertorOpenCV.h \
           $${PWD}/include/3rdparty/ConvertorQImage.h \
           $${PWD}/include/3rdparty/direntvc.h \
           $${PWD}/include/3rdparty/fparser.hh \
           $${PWD}/include/3rdparty/fpconfig.hh \
           $${PWD}/include/3rdparty/fptypes.hh \
           $${PWD}/include/3rdparty/jpgd.h \
           $${PWD}/include/3rdparty/jpge.h \
           $${PWD}/include/3rdparty/lodepng.h \
           $${PWD}/include/3rdparty/MatNDisplayCImg.h \
           $${PWD}/include/3rdparty/MTRand.h \
           $${PWD}/include/3rdparty/pugiconfig.hpp \
           $${PWD}/include/3rdparty/pugixml.hpp \
           $${PWD}/include/3rdparty/tinythread.h \
           $${PWD}/include/3rdparty/VideoFFMPEG.h \
           $${PWD}/include/3rdparty/VideoVLC.h \
           $${PWD}/include/3rdparty/VideoVLCDeprecated.h \
           $${PWD}/include/data/3d/GLFigure.h \
           $${PWD}/include/data/distribution/Distribution.h \
           $${PWD}/include/data/distribution/DistributionAnalytic.h \
           $${PWD}/include/data/distribution/DistributionArithmetic.h \
           $${PWD}/include/data/distribution/DistributionFromDataStructure.h \
           $${PWD}/include/data/distribution/DistributionMultiVariate.h \
           $${PWD}/include/data/distribution/DistributionMultiVariateArithmetic.h \
           $${PWD}/include/data/distribution/DistributionMultiVariateFromDataStructure.h \
           $${PWD}/include/data/functor/FunctorF.h \
           $${PWD}/include/data/functor/FunctorPDE.h \
           $${PWD}/include/data/germgrain/Germ.h \
           $${PWD}/include/data/germgrain/GermGrain.h \
           $${PWD}/include/data/mat/Mat2x.h \
           $${PWD}/include/data/mat/MatN.h \
           $${PWD}/include/data/mat/MatNBoundaryCondition.h \
           $${PWD}/include/data/mat/MatNDisplay.h \
           $${PWD}/include/data/mat/MatNInOut.h \
           $${PWD}/include/data/mat/MatNIteratorE.h \
           $${PWD}/include/data/neuralnetwork/NeuralNetwork.h \
           $${PWD}/include/data/notstable/CharacteristicCluster.h \
           $${PWD}/include/data/notstable/Classifer.h \
           $${PWD}/include/data/notstable/Descriptor.h \
           $${PWD}/include/data/notstable/Ransac.h \
           $${PWD}/include/data/notstable/Wavelet.h \
           $${PWD}/include/data/notstable/MatNReference.h \
           $${PWD}/include/data/ocr/OCR.h \
           $${PWD}/include/data/population/PopulationData.h \
           $${PWD}/include/data/population/PopulationFunctor.h \
           $${PWD}/include/data/population/PopulationGrows.h \
           $${PWD}/include/data/population/PopulationPDE.h \
           $${PWD}/include/data/population/PopulationQueues.h \
           $${PWD}/include/data/population/PopulationRestrictedSet.h \
           $${PWD}/include/data/typeF/Complex.h \
           $${PWD}/include/data/typeF/RGB.h \
           $${PWD}/include/data/typeF/TypeF.h \
           $${PWD}/include/data/typeF/TypeTraitsF.h \
           $${PWD}/include/data/utility/BasicUtility.h \
           $${PWD}/include/data/utility/Cryptography.h \
           $${PWD}/include/data/utility/BSPTree.h \
           $${PWD}/include/data/utility/XML.h \
           $${PWD}/include/data/vec/Vec.h \
           $${PWD}/include/data/vec/VecN.h \
           $${PWD}/include/data/video/Video.h \
           $${PWD}/include/data/notstable/graph/Graph.h \
           $$PWD/include/data/functor/FunctorMatN.h

SOURCES += $${PWD}/src/algorithm/GeometricalTransformation.cpp \
           $${PWD}/src/algorithm/LinearAlgebra.cpp \
           $${PWD}/src/algorithm/RandomGeometry.cpp \
           $${PWD}/src/algorithm/Statistics.cpp \
           $${PWD}/src/algorithm/Visualization.cpp \
           $${PWD}/src/3rdparty/ConvertorOpenCV.cpp \
           $${PWD}/src/3rdparty/ConvertorQImage.cpp \
           $${PWD}/src/3rdparty/fparser.cpp \
           $${PWD}/src/3rdparty/jpgd.cpp \
           $${PWD}/src/3rdparty/jpge.cpp \
           $${PWD}/src/3rdparty/lodepng.cpp \
           $${PWD}/src/3rdparty/MatNDisplayCImg.cpp \
           $${PWD}/src/3rdparty/MTRand.cpp \
           $${PWD}/src/3rdparty/pugixml.cpp \
           $${PWD}/src/3rdparty/tinythread.cpp \
           $${PWD}/src/3rdparty/VideoFFMPEG.cpp \
           $${PWD}/src/3rdparty/VideoVLC.cpp \
           $${PWD}/src/3rdparty/VideoVLCDeprecated.cpp \
           $${PWD}/src/data/3d/GLFigure.cpp \
           $${PWD}/src/data/distribution/Distribution.cpp \
           $${PWD}/src/data/distribution/DistributionAnalytic.cpp \
           $${PWD}/src/data/distribution/DistributionArithmetic.cpp \
           $${PWD}/src/data/distribution/DistributionFromDataStructure.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariate.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariateArithmetic.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariateFromDataStructure.cpp \
           $${PWD}/src/data/germgrain/GermGrain.cpp \
           $${PWD}/src/data/mat/MatNDisplay.cpp \
           $${PWD}/src/data/mat/MatNInOut.cpp \
           $${PWD}/src/data/neuralnetwork/NeuralNetwork.cpp \
           $${PWD}/src/data/notstable/Ransac.cpp \
           $${PWD}/src/data/ocr/OCR.cpp \
           $${PWD}/src/data/utility/BasicUtility.cpp \
           $${PWD}/src/data/utility/Cryptography.cpp \
           $${PWD}/src/data/utility/XML.cpp \
           $${PWD}/src/data/video/Video.cpp

HEADERS += $${PWD}/include/Population.h \
           $${PWD}/include/PopulationConfig.h \
           $${PWD}/include/algorithm/Analysis.h \
           $${PWD}/include/algorithm/Arithmetic.h \
           $${PWD}/include/algorithm/AnalysisAdvanced.h \
           $${PWD}/include/algorithm/Application.h \
           $${PWD}/include/algorithm/Convertor.h \
           $${PWD}/include/algorithm/Draw.h \
           $${PWD}/include/algorithm/Feature.h \
           $${PWD}/include/algorithm/ForEachFunctor.h \
           $${PWD}/include/algorithm/GeometricalTransformation.h \
           $${PWD}/include/algorithm/LinearAlgebra.h \
           $${PWD}/include/algorithm/PDE.h \
           $${PWD}/include/algorithm/PDEAdvanced.h \
           $${PWD}/include/algorithm/Processing.h \
           $${PWD}/include/algorithm/ProcessingAdvanced.h \
           $${PWD}/include/algorithm/ProcessingVideo.h \
           $${PWD}/include/algorithm/RandomGeometry.h \
           $${PWD}/include/algorithm/Representation.h \
           $${PWD}/include/algorithm/Statistics.h \
           $${PWD}/include/algorithm/Visualization.h \
           $${PWD}/include/3rdparty/bipmap.h \
           $${PWD}/include/3rdparty/CImg.h \
           $${PWD}/include/3rdparty/ConvertorCImg.h \
           $${PWD}/include/3rdparty/ConvertorOpenCV.h \
           $${PWD}/include/3rdparty/ConvertorQImage.h \
           $${PWD}/include/3rdparty/direntvc.h \
           $${PWD}/include/3rdparty/fparser.hh \
           $${PWD}/include/3rdparty/fpconfig.hh \
           $${PWD}/include/3rdparty/fptypes.hh \
           $${PWD}/include/3rdparty/jpgd.h \
           $${PWD}/include/3rdparty/jpge.h \
           $${PWD}/include/3rdparty/lodepng.h \
           $${PWD}/include/3rdparty/easylogging++.h \
           $${PWD}/include/3rdparty/MatNDisplayCImg.h \
           $${PWD}/include/3rdparty/MTRand.h \
           $${PWD}/include/3rdparty/pugiconfig.hpp \
           $${PWD}/include/3rdparty/pugixml.hpp \
           $${PWD}/include/3rdparty/tinythread.h \
           $${PWD}/include/3rdparty/VideoFFMPEG.h \
           $${PWD}/include/3rdparty/VideoVLC.h \
           $${PWD}/include/3rdparty/VideoVLCDeprecated.h \
           $${PWD}/include/data/3d/GLFigure.h \
           $${PWD}/include/data/distribution/Distribution.h \
           $${PWD}/include/data/distribution/DistributionAnalytic.h \
           $${PWD}/include/data/distribution/DistributionArithmetic.h \
           $${PWD}/include/data/distribution/DistributionFromDataStructure.h \
           $${PWD}/include/data/distribution/DistributionMultiVariate.h \
           $${PWD}/include/data/distribution/DistributionMultiVariateArithmetic.h \
           $${PWD}/include/data/distribution/DistributionMultiVariateFromDataStructure.h \
           $${PWD}/include/data/functor/FunctorF.h \
           $${PWD}/include/data/functor/FunctorPDE.h \
           $${PWD}/include/data/germgrain/Germ.h \
           $${PWD}/include/data/germgrain/GermGrain.h \
           $${PWD}/include/data/mat/Mat2x.h \
           $${PWD}/include/data/mat/MatN.h \
           $${PWD}/include/data/mat/MatNBoundaryCondition.h \
           $${PWD}/include/data/mat/MatNDisplay.h \
           $${PWD}/include/data/mat/MatNInOut.h \
           $${PWD}/include/data/mat/MatNIteratorE.h \
           $${PWD}/include/data/neuralnetwork/NeuralNetwork.h \
           $${PWD}/include/data/notstable/CharacteristicCluster.h \
           $${PWD}/include/data/notstable/Classifer.h \
           $${PWD}/include/data/notstable/Descriptor.h \
           $${PWD}/include/data/notstable/Ransac.h \
           $${PWD}/include/data/notstable/Wavelet.h \
           $${PWD}/include/data/notstable/MatNReference.h \
           $${PWD}/include/data/ocr/OCR.h \
           $${PWD}/include/data/population/PopulationData.h \
           $${PWD}/include/data/population/PopulationFunctor.h \
           $${PWD}/include/data/population/PopulationGrows.h \
           $${PWD}/include/data/population/PopulationPDE.h \
           $${PWD}/include/data/population/PopulationQueues.h \
           $${PWD}/include/data/population/PopulationRestrictedSet.h \
           $${PWD}/include/data/typeF/Complex.h \
           $${PWD}/include/data/typeF/RGB.h \
           $${PWD}/include/data/typeF/TypeF.h \
           $${PWD}/include/data/typeF/TypeTraitsF.h \
           $${PWD}/include/data/utility/BasicUtility.h \
           $${PWD}/include/data/utility/Cryptography.h \
           $${PWD}/include/data/utility/BSPTree.h \
           $${PWD}/include/data/utility/XML.h \
           $${PWD}/include/data/vec/Vec.h \
           $${PWD}/include/data/vec/VecN.h \
           $${PWD}/include/data/video/Video.h \
           $${PWD}/include/data/notstable/graph/Graph.h \
           $$PWD/include/data/functor/FunctorMatN.h

SOURCES += $${PWD}/src/algorithm/GeometricalTransformation.cpp \
           $${PWD}/src/algorithm/LinearAlgebra.cpp \
           $${PWD}/src/algorithm/RandomGeometry.cpp \
           $${PWD}/src/algorithm/Statistics.cpp \
           $${PWD}/src/algorithm/Visualization.cpp \
           $${PWD}/src/3rdparty/ConvertorOpenCV.cpp \
           $${PWD}/src/3rdparty/ConvertorQImage.cpp \
           $${PWD}/src/3rdparty/fparser.cpp \
           $${PWD}/src/3rdparty/jpgd.cpp \
           $${PWD}/src/3rdparty/jpge.cpp \
           $${PWD}/src/3rdparty/lodepng.cpp \
           $${PWD}/src/3rdparty/MatNDisplayCImg.cpp \
           $${PWD}/src/3rdparty/MTRand.cpp \
           $${PWD}/src/3rdparty/pugixml.cpp \
           $${PWD}/src/3rdparty/tinythread.cpp \
           $${PWD}/src/3rdparty/VideoFFMPEG.cpp \
           $${PWD}/src/3rdparty/VideoVLC.cpp \
           $${PWD}/src/3rdparty/VideoVLCDeprecated.cpp \
           $${PWD}/src/data/3d/GLFigure.cpp \
           $${PWD}/src/data/distribution/Distribution.cpp \
           $${PWD}/src/data/distribution/DistributionAnalytic.cpp \
           $${PWD}/src/data/distribution/DistributionArithmetic.cpp \
           $${PWD}/src/data/distribution/DistributionFromDataStructure.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariate.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariateArithmetic.cpp \
           $${PWD}/src/data/distribution/DistributionMultiVariateFromDataStructure.cpp \
           $${PWD}/src/data/germgrain/GermGrain.cpp \
           $${PWD}/src/data/mat/MatNDisplay.cpp \
           $${PWD}/src/data/mat/MatNInOut.cpp \
           $${PWD}/src/data/neuralnetwork/NeuralNetwork.cpp \
           $${PWD}/src/data/notstable/Ransac.cpp \
           $${PWD}/src/data/ocr/OCR.cpp \
           $${PWD}/src/data/utility/BasicUtility.cpp \
           $${PWD}/src/data/utility/Cryptography.cpp \
           $${PWD}/src/data/utility/XML.cpp \
           $${PWD}/src/data/video/Video.cpp


Fix broken rpath

Fix broken rpath

INCLUDEPATH += $$PWD
use_pkgconfig {
    QMAKE_CXXFLAGS += $$system(pkg-config --cflags wayland-server)
    #for some reason this is not included in the cflags line
    INCLUDEPATH += $$system(pkg-config --variable=includedir wayland-server)
    LIBS += $$system(pkg-config --libs wayland-server)

    #set the rpath
    !isEmpty(QMAKE_LFLAGS_RPATH) {
        WAYLAND_NEEDS_RPATH = $$system(pkg-config --libs-only-L wayland-server)
        !isEmpty(WAYLAND_NEEDS_RPATH) {
            WAYLAND_LIBDIR = $$system(pkg-config --variable=libdir wayland-server)
            !isEmpty(WAYLAND_LIBDIR):QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${WAYLAND_LIBDIR}
        }
    }
} else {
    INCLUDEPATH += $$PWD/../3rdparty/wayland
    LIBS += -L$$PWD/../../lib
    LIBS += -lwayland-server -lffi
}

include ($$PWD/util/util.pri)
include ($$PWD/wayland_wrapper/wayland_wrapper.pri)
include ($$PWD/hardware_integration/hardware_integration.pri)
include ($$PWD/compositor_api/compositor_api.pri)
include ($$PWD/windowmanagerprotocol/windowmanagerprotocol.pri)

INCLUDEPATH += $$PWD
use_pkgconfig {
    QMAKE_CXXFLAGS += $$system(pkg-config --cflags wayland-server)
    #for some reason this is not included in the cflags line
    INCLUDEPATH += $$system(pkg-config --variable=includedir wayland-server)
    LIBS += $$system(pkg-config --libs wayland-server)

    #set the rpath
    !isEmpty(QMAKE_LFLAGS_RPATH) {
        WAYLAND_LIBDIR = $$system(pkg-config --variable=libdir wayland-server)
        !isEmpty(WAYLAND_LIBDIR):QMAKE_LFLAGS += $${QMAKE_LFLAGS_RPATH}$${WAYLAND_LIBDIR}
    }
} else {
    INCLUDEPATH += $$PWD/../3rdparty/wayland
    LIBS += -L$$PWD/../../lib
    LIBS += -lwayland-server -lffi
}

include ($$PWD/util/util.pri)
include ($$PWD/wayland_wrapper/wayland_wrapper.pri)
include ($$PWD/hardware_integration/hardware_integration.pri)
include ($$PWD/compositor_api/compositor_api.pri)
include ($$PWD/windowmanagerprotocol/windowmanagerprotocol.pri)


Request Qt pre-5.0 API for Qt 5 builds

Request Qt pre-5.0 API for Qt 5 builds

Qt Creator currently must compile with both Qt 4 and Qt 5, so we can't
change the code to call the non-deprecated functions that have been
recently deprecated in Qt 5, unless those functions already existed.

This change asks Qt 5 to enable the use of pre-5.0 API without warnings.

Change-Id: Ic165336f40d15fe5793d30bb9262986f738c984e
Reviewed-by: Eike Ziller <c142da16c73a95a82d35191bcc55b22835617128@nokia.com>
Reviewed-by: Friedemann Kleint <1b9f2592239daaec4856ccc1cfb4d2d55b35fb71@nokia.com>

!isEmpty(QTCREATOR_PRI_INCLUDED):error("qtcreator.pri already included")
QTCREATOR_PRI_INCLUDED = 1

QTCREATOR_VERSION = 2.5.81

defineReplace(cleanPath) {
    win32:1 ~= s|\\\\|/|g
    contains(1, ^/.*):pfx = /
    else:pfx =
    segs = $$split(1, /)
    out =
    for(seg, segs) {
        equals(seg, ..):out = $$member(out, 0, -2)
        else:!equals(seg, .):out += $$seg
    }
    return($$join(out, /, $$pfx))
}

defineReplace(targetPath) {
    return($$replace(1, /, $$QMAKE_DIR_SEP))
}

defineReplace(qtLibraryName) {
   unset(LIBRARY_NAME)
   LIBRARY_NAME = $$1
   CONFIG(debug, debug|release) {
      !debug_and_release|build_pass {
          mac:RET = $$member(LIBRARY_NAME, 0)_debug
              else:win32:RET = $$member(LIBRARY_NAME, 0)d
      }
   }
   isEmpty(RET):RET = $$LIBRARY_NAME
   return($$RET)
}

defineTest(minQtVersion) {
    maj = $$1
    min = $$2
    patch = $$3
    isEqual(QT_MAJOR_VERSION, $$maj) {
        isEqual(QT_MINOR_VERSION, $$min) {
            isEqual(QT_PATCH_VERSION, $$patch) {
                return(true)
            }
            greaterThan(QT_PATCH_VERSION, $$patch) {
                return(true)
            }
        }
        greaterThan(QT_MINOR_VERSION, $$min) {
            return(true)
        }
    }
    greaterThan(QT_MAJOR_VERSION, $$maj) {
        return(true)
    }
    return(false)
}

# For use in custom compilers which just copy files
win32:i_flag = i
defineReplace(stripSrcDir) {
    win32 {
        !contains(1, ^.:.*):1 = $$OUT_PWD/$$1
    } else {
        !contains(1, ^/.*):1 = $$OUT_PWD/$$1
    }
    out = $$cleanPath($$1)
    out ~= s|^$$re_escape($$PWD/)||$$i_flag
    return($$out)
}

isEmpty(TEST):CONFIG(debug, debug|release) {
    !debug_and_release|build_pass {
        TEST = 1
    }
}

isEmpty(IDE_LIBRARY_BASENAME) {
    IDE_LIBRARY_BASENAME = lib
}

equals(TEST, 1) {
    QT +=testlib
    DEFINES += WITH_TESTS
}

IDE_SOURCE_TREE = $$PWD
isEmpty(IDE_BUILD_TREE) {
    sub_dir = $$_PRO_FILE_PWD_
    sub_dir ~= s,^$$re_escape($$PWD),,
    IDE_BUILD_TREE = $$cleanPath($$OUT_PWD)
    IDE_BUILD_TREE ~= s,$$re_escape($$sub_dir)$,,
}
IDE_APP_PATH = $$IDE_BUILD_TREE/bin
macx {
    IDE_APP_TARGET   = "Qt Creator"
    IDE_LIBRARY_PATH = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/PlugIns
    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH
    IDE_LIBEXEC_PATH = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/Resources
    IDE_DATA_PATH    = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/Resources
    IDE_DOC_PATH     = $$IDE_DATA_PATH/doc
    IDE_BIN_PATH     = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/MacOS
    copydata = 1
    isEmpty(TIGER_COMPAT_MODE):TIGER_COMPAT_MODE=$$(QTC_TIGER_COMPAT)
    isEmpty(TIGER_COMPAT_MODE) {
        QMAKE_CXXFLAGS *= -mmacosx-version-min=10.5
        QMAKE_LFLAGS *= -mmacosx-version-min=10.5
    }
} else {
    contains(TEMPLATE, vc.*):vcproj = 1
    IDE_APP_TARGET   = qtcreator
    IDE_LIBRARY_PATH = $$IDE_BUILD_TREE/$$IDE_LIBRARY_BASENAME/qtcreator
    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH/plugins
    IDE_LIBEXEC_PATH = $$IDE_APP_PATH # FIXME
    IDE_DATA_PATH    = $$IDE_BUILD_TREE/share/qtcreator
    IDE_DOC_PATH     = $$IDE_BUILD_TREE/share/doc/qtcreator
    IDE_BIN_PATH     = $$IDE_APP_PATH
    !isEqual(IDE_SOURCE_TREE, $$IDE_BUILD_TREE):copydata = 1
}

INCLUDEPATH += \
    $$IDE_BUILD_TREE/src \ # for <app/app_version.h>
    $$IDE_SOURCE_TREE/src/libs \
    $$IDE_SOURCE_TREE/tools \
    $$IDE_SOURCE_TREE/src/plugins

CONFIG += depend_includepath

LIBS += -L$$IDE_LIBRARY_PATH

!isEmpty(vcproj) {
    DEFINES += IDE_LIBRARY_BASENAME=\"$$IDE_LIBRARY_BASENAME\"
} else {
    DEFINES += IDE_LIBRARY_BASENAME=\\\"$$IDE_LIBRARY_BASENAME\\\"
}

#DEFINES += QT_NO_CAST_FROM_ASCII
DEFINES += QT_NO_CAST_TO_ASCII
!macx:DEFINES += QT_USE_FAST_OPERATOR_PLUS QT_USE_FAST_CONCATENATION

unix {
    CONFIG(debug, debug|release):OBJECTS_DIR = $${OUT_PWD}/.obj/debug-shared
    CONFIG(release, debug|release):OBJECTS_DIR = $${OUT_PWD}/.obj/release-shared

    CONFIG(debug, debug|release):MOC_DIR = $${OUT_PWD}/.moc/debug-shared
    CONFIG(release, debug|release):MOC_DIR = $${OUT_PWD}/.moc/release-shared

    RCC_DIR = $${OUT_PWD}/.rcc
    UI_DIR = $${OUT_PWD}/.uic
}

win32-msvc* {
    #Don't warn about sprintf, fopen etc being 'unsafe'
    DEFINES += _CRT_SECURE_NO_WARNINGS
}

qt:greaterThan(QT_MAJOR_VERSION, 4) {
    contains(QT, core): QT += concurrent
    contains(QT, gui): QT += widgets
    DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x040900
}

!isEmpty(QTCREATOR_PRI_INCLUDED):error("qtcreator.pri already included")
QTCREATOR_PRI_INCLUDED = 1

QTCREATOR_VERSION = 2.5.81

defineReplace(cleanPath) {
    win32:1 ~= s|\\\\|/|g
    contains(1, ^/.*):pfx = /
    else:pfx =
    segs = $$split(1, /)
    out =
    for(seg, segs) {
        equals(seg, ..):out = $$member(out, 0, -2)
        else:!equals(seg, .):out += $$seg
    }
    return($$join(out, /, $$pfx))
}

defineReplace(targetPath) {
    return($$replace(1, /, $$QMAKE_DIR_SEP))
}

defineReplace(qtLibraryName) {
   unset(LIBRARY_NAME)
   LIBRARY_NAME = $$1
   CONFIG(debug, debug|release) {
      !debug_and_release|build_pass {
          mac:RET = $$member(LIBRARY_NAME, 0)_debug
              else:win32:RET = $$member(LIBRARY_NAME, 0)d
      }
   }
   isEmpty(RET):RET = $$LIBRARY_NAME
   return($$RET)
}

defineTest(minQtVersion) {
    maj = $$1
    min = $$2
    patch = $$3
    isEqual(QT_MAJOR_VERSION, $$maj) {
        isEqual(QT_MINOR_VERSION, $$min) {
            isEqual(QT_PATCH_VERSION, $$patch) {
                return(true)
            }
            greaterThan(QT_PATCH_VERSION, $$patch) {
                return(true)
            }
        }
        greaterThan(QT_MINOR_VERSION, $$min) {
            return(true)
        }
    }
    greaterThan(QT_MAJOR_VERSION, $$maj) {
        return(true)
    }
    return(false)
}

# For use in custom compilers which just copy files
win32:i_flag = i
defineReplace(stripSrcDir) {
    win32 {
        !contains(1, ^.:.*):1 = $$OUT_PWD/$$1
    } else {
        !contains(1, ^/.*):1 = $$OUT_PWD/$$1
    }
    out = $$cleanPath($$1)
    out ~= s|^$$re_escape($$PWD/)||$$i_flag
    return($$out)
}

isEmpty(TEST):CONFIG(debug, debug|release) {
    !debug_and_release|build_pass {
        TEST = 1
    }
}

isEmpty(IDE_LIBRARY_BASENAME) {
    IDE_LIBRARY_BASENAME = lib
}

equals(TEST, 1) {
    QT +=testlib
    DEFINES += WITH_TESTS
}

IDE_SOURCE_TREE = $$PWD
isEmpty(IDE_BUILD_TREE) {
    sub_dir = $$_PRO_FILE_PWD_
    sub_dir ~= s,^$$re_escape($$PWD),,
    IDE_BUILD_TREE = $$cleanPath($$OUT_PWD)
    IDE_BUILD_TREE ~= s,$$re_escape($$sub_dir)$,,
}
IDE_APP_PATH = $$IDE_BUILD_TREE/bin
macx {
    IDE_APP_TARGET   = "Qt Creator"
    IDE_LIBRARY_PATH = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/PlugIns
    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH
    IDE_LIBEXEC_PATH = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/Resources
    IDE_DATA_PATH    = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/Resources
    IDE_DOC_PATH     = $$IDE_DATA_PATH/doc
    IDE_BIN_PATH     = $$IDE_APP_PATH/$${IDE_APP_TARGET}.app/Contents/MacOS
    copydata = 1
    isEmpty(TIGER_COMPAT_MODE):TIGER_COMPAT_MODE=$$(QTC_TIGER_COMPAT)
    isEmpty(TIGER_COMPAT_MODE) {
        QMAKE_CXXFLAGS *= -mmacosx-version-min=10.5
        QMAKE_LFLAGS *= -mmacosx-version-min=10.5
    }
} else {
    contains(TEMPLATE, vc.*):vcproj = 1
    IDE_APP_TARGET   = qtcreator
    IDE_LIBRARY_PATH = $$IDE_BUILD_TREE/$$IDE_LIBRARY_BASENAME/qtcreator
    IDE_PLUGIN_PATH  = $$IDE_LIBRARY_PATH/plugins
    IDE_LIBEXEC_PATH = $$IDE_APP_PATH # FIXME
    IDE_DATA_PATH    = $$IDE_BUILD_TREE/share/qtcreator
    IDE_DOC_PATH     = $$IDE_BUILD_TREE/share/doc/qtcreator
    IDE_BIN_PATH     = $$IDE_APP_PATH
    !isEqual(IDE_SOURCE_TREE, $$IDE_BUILD_TREE):copydata = 1
}

INCLUDEPATH += \
    $$IDE_BUILD_TREE/src \ # for <app/app_version.h>
    $$IDE_SOURCE_TREE/src/libs \
    $$IDE_SOURCE_TREE/tools \
    $$IDE_SOURCE_TREE/src/plugins

CONFIG += depend_includepath

LIBS += -L$$IDE_LIBRARY_PATH

!isEmpty(vcproj) {
    DEFINES += IDE_LIBRARY_BASENAME=\"$$IDE_LIBRARY_BASENAME\"
} else {
    DEFINES += IDE_LIBRARY_BASENAME=\\\"$$IDE_LIBRARY_BASENAME\\\"
}

#DEFINES += QT_NO_CAST_FROM_ASCII
DEFINES += QT_NO_CAST_TO_ASCII
!macx:DEFINES += QT_USE_FAST_OPERATOR_PLUS QT_USE_FAST_CONCATENATION

unix {
    CONFIG(debug, debug|release):OBJECTS_DIR = $${OUT_PWD}/.obj/debug-shared
    CONFIG(release, debug|release):OBJECTS_DIR = $${OUT_PWD}/.obj/release-shared

    CONFIG(debug, debug|release):MOC_DIR = $${OUT_PWD}/.moc/debug-shared
    CONFIG(release, debug|release):MOC_DIR = $${OUT_PWD}/.moc/release-shared

    RCC_DIR = $${OUT_PWD}/.rcc
    UI_DIR = $${OUT_PWD}/.uic
}

win32-msvc* {
    #Don't warn about sprintf, fopen etc being 'unsafe'
    DEFINES += _CRT_SECURE_NO_WARNINGS
}

qt:greaterThan(QT_MAJOR_VERSION, 4) {
    contains(QT, core): QT += concurrent
    contains(QT, gui): QT += widgets
}


platform fix 2

platform fix 2

HOST_ARCH=$$system(dpkg-architecture -qDEB_HOST_GNU_TYPE || echo)
isEmpty($$HOST_ARCH){
  message("preparing for MEEGO")
  CONFIG += meego
  DEFINES += MEEGO
}

meego {
  message("MEEGO")
} else {
message("NON-MEEGO")
}

HOST_ARCH=$$system(dpkg-architecture -qDEB_HOST_GNU_TYPE || echo "meego")
contains($$HOST_ARCH,meego){
  CONFIG += meego
  DEFINES += MEEGO
}

meego {
  message("MEEGO")
} else {
message("NON-MEEGO")
}


Docs: 'make docs' now builds online mobility docs.

win32:!win32-g++ {
    unixstyle = false
} else:win32-g++:isEmpty(QMAKE_SH) {
    unixstyle = false
} else {
    unixstyle = true
}

LINE_SEP=$$escape_expand(\\n\\t)
GENERATOR = $$[QT_INSTALL_BINS]/qhelpgenerator
QDOC = $$[QT_INSTALL_BINS]/qdoc3
MOBILITY_DOCUMENTATION = $$QDOC $${QT_MOBILITY_SOURCE_TREE}/doc/config/qtmobility-online.qdocconf $$LINE_SEP \
                         cd $${QT_MOBILITY_SOURCE_TREE} && \
                          $$GENERATOR doc/html/qtmobility.qhp -o doc/qch/qtmobility.qch

# Sensors uses .dia files which must be compiled into .png for the docs
unix {
    LOGNAME=$$(LOGNAME)
    equals(LOGNAME,lramsay) {
        # Only do this on Unix when logged in as me
        MOBILITY_DOCUMENTATION=\
            @( cd "$$PWD/src";\
            for file in *.dia; do\
                destfile="images/\$$(echo "\$$file" | sed 's/dia\$$/png/')";\
                if [ "\$$file" -nt "\$$destfile" ]; then\
                    dia -e "\$$destfile" "\$$file";\
                fi;\
            done ) || true\
            $$LINE_SEP $$MOBILITY_DOCUMENTATION
    }
}

contains(unixstyle, false):MOBILITY_DOCUMENTATION = $$replace(MOBILITY_DOCUMENTATION, "/", "\\")

# Build rules
qch_docs.commands = $$MOBILITY_DOCUMENTATION

docs.depends = qch_docs

QMAKE_EXTRA_TARGETS += qch_docs docs

win32:!win32-g++ {
    unixstyle = false
} else:win32-g++:isEmpty(QMAKE_SH) {
    unixstyle = false
} else {
    unixstyle = true
}

LINE_SEP=$$escape_expand(\\n\\t)
GENERATOR = $$[QT_INSTALL_BINS]/qhelpgenerator
QDOC = $$[QT_INSTALL_BINS]/qdoc3
MOBILITY_DOCUMENTATION = $$QDOC -creator $${QT_MOBILITY_SOURCE_TREE}/doc/src/qtmobility.qdocconf $$LINE_SEP \
                         cd $${QT_MOBILITY_SOURCE_TREE} && \
                          $$GENERATOR doc/html/qtmobility.qhp -o doc/qch/qtmobility.qch

# Sensors uses .dia files which must be compiled into .png for the docs
unix {
    LOGNAME=$$(LOGNAME)
    equals(LOGNAME,lramsay) {
        # Only do this on Unix when logged in as me
        MOBILITY_DOCUMENTATION=\
            @( cd "$$PWD/src";\
            for file in *.dia; do\
                destfile="images/\$$(echo "\$$file" | sed 's/dia\$$/png/')";\
                if [ "\$$file" -nt "\$$destfile" ]; then\
                    dia -e "\$$destfile" "\$$file";\
                fi;\
            done ) || true\
            $$LINE_SEP $$MOBILITY_DOCUMENTATION
    }
}

contains(unixstyle, false):MOBILITY_DOCUMENTATION = $$replace(MOBILITY_DOCUMENTATION, "/", "\\")

# Build rules
qch_docs.commands = $$MOBILITY_DOCUMENTATION

docs.depends = qch_docs

QMAKE_EXTRA_TARGETS += qch_docs docs


Auto detect a Qt branch which includes video output.

Check if QtMultimedia/qabstractvideosurface.h exists in the Qt include
path.

######################################################################
#
# Mobility API project - common QMake settings
#
######################################################################

CONFIG += debug_and_release build_all

# On win32 and mac, debug and release libraries are named differently.
# We must follow the debug and release settings Qt was compiled with:
# build debug iff Qt built debug, build release iff Qt built release.
win32|mac {
    !contains(QT_CONFIG,debug)|!contains(QT_CONFIG,release) {
        CONFIG -= debug_and_release debug release
        contains(QT_CONFIG,debug):  CONFIG+=debug
        contains(QT_CONFIG,release):CONFIG+=release
    }
}

CONFIG(debug, debug|release) {
    SUBDIRPART = Debug
} else {
    SUBDIRPART = Release
}

# Figure out the root of where stuff should go (this could be done via configure)
example|plugin {
    OUTPUT_DIR = $$OUT_PWD/../..
    SOURCE_DIR = $$PWD/../..
} else: testcase {
    OUTPUT_DIR = $$OUT_PWD/../../..
    SOURCE_DIR = $$PWD/../../..
} else {
    OUTPUT_DIR = $$OUT_PWD/..
    SOURCE_DIR = $$PWD/..
}

#test whether we have a unit test
!testcase {
    OBJECTS_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/rcc
    UI_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/ui
} else {
    QT *= testlib
    CONFIG += console
    CONFIG -= app_bundle
    OBJECTS_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/rcc
    UI_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/ui
    LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against library that we test
}

# Add the output dirs to the link path too
LIBS += -L$$DESTDIR

DEPENDPATH += . $$SOURCE_DIR
INCLUDEPATH += . $$SOURCE_DIR
#For some reason the default include path doesn't include MOC_DIR on symbian
symbian {
	INCLUDEPATH += $$MOC_DIR
}

for(p, QMAKE_INCDIR_QT) {
    exists("$${p}/QtMultimedia/qabstractvideosurface.h"): CONFIG *= videosurface
}
!contains(CONFIG, videosurface): DEFINES += QT_NO_VIDEOSURFACE

plugin: !isEmpty(PLUGIN_SUBDIR): DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/$$PLUGIN_SUBDIR

######################################################################
#
# Mobility API project - common QMake settings
#
######################################################################

CONFIG += debug_and_release build_all

# On win32 and mac, debug and release libraries are named differently.
# We must follow the debug and release settings Qt was compiled with:
# build debug iff Qt built debug, build release iff Qt built release.
win32|mac {
    !contains(QT_CONFIG,debug)|!contains(QT_CONFIG,release) {
        CONFIG -= debug_and_release debug release
        contains(QT_CONFIG,debug):  CONFIG+=debug
        contains(QT_CONFIG,release):CONFIG+=release
    }
}

CONFIG(debug, debug|release) {
    SUBDIRPART = Debug
} else {
    SUBDIRPART = Release
}

# Figure out the root of where stuff should go (this could be done via configure)
example|plugin {
    OUTPUT_DIR = $$OUT_PWD/../..
    SOURCE_DIR = $$PWD/../..
} else: testcase {
    OUTPUT_DIR = $$OUT_PWD/../../..
    SOURCE_DIR = $$PWD/../../..
} else {
    OUTPUT_DIR = $$OUT_PWD/..
    SOURCE_DIR = $$PWD/..
}

#test whether we have a unit test
!testcase {
    OBJECTS_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/rcc
    UI_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/ui
} else {
    QT *= testlib
    CONFIG += console
    CONFIG -= app_bundle
    OBJECTS_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/rcc
    UI_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/ui
    LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against library that we test
}

# Add the output dirs to the link path too
LIBS += -L$$DESTDIR

DEPENDPATH += . $$SOURCE_DIR
INCLUDEPATH += . $$SOURCE_DIR
#For some reason the default include path doesn't include MOC_DIR on symbian
symbian {
	INCLUDEPATH += $$MOC_DIR
}

!contains(CONFIG, videosurface): DEFINES += QT_NO_VIDEOSURFACE

plugin: !isEmpty(PLUGIN_SUBDIR): DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/$$PLUGIN_SUBDIR


Temporarily turn off automatically adding the Symbian backend.

Can still be added by using qmake CONTACTS_BACKENDS+=symbian.

######################################################################
#
# Mobility API project - common QMake settings
#
######################################################################

CONFIG += debug_and_release build_all

# On win32 and mac, debug and release libraries are named differently.
# We must follow the debug and release settings Qt was compiled with:
# build debug iff Qt built debug, build release iff Qt built release.
win32|mac {
    !contains(QT_CONFIG,debug)|!contains(QT_CONFIG,release) {
        CONFIG -= debug_and_release debug release
        contains(QT_CONFIG,debug):  CONFIG+=debug
        contains(QT_CONFIG,release):CONFIG+=release
    }
}

# Make sure this goes everywhere we need it
symbian: load(data_caging_paths)

CONFIG(debug, debug|release) {
    SUBDIRPART = Debug
} else {
    SUBDIRPART = Release
}

# Which backend we're building
## memory / invalid / symbian / windows / vcard / kabc etc.
CONTACTS_BACKENDS = memory invalid
wince*:CONTACTS_BACKENDS += wince

### Hmm, which one is relevant here...
# symbian:CONTACTS_BACKENDS += symbian
# symbian:CONTACTS_BACKENDS += symbians60

# Figure out the root of where stuff should go (this could be done via configure)
OUTPUT_DIR = $$PWD
SOURCE_DIR = $$PWD

#test whether we have a unit test
!testcase {
    # Normal library/plugin/example code
    OBJECTS_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET
    !plugin:!testplugin {
        DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin
    } else {
        # This is where plugins get built
        testplugin:DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin/plugins/contacts
        !testplugin:DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/plugins/contacts

        # And since we're a plugin, add the base lib path to the lib dirs
        LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against base dir as well
    }
    MOC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/rcc

} else {
    # Unit test code (no plugins! test plugins are just normal plugins installed elsewhere)
    QT *= testlib
    CONFIG += console
    CONFIG -= app_bundle
    OBJECTS_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/rcc

    LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against library that we test
}

INCLUDEPATH *= $$MOC_DIR
INCLUDEPATH *= $$RCC_DIR

# Add files for deployment
wince* {
    # Main library
    CONTACTS_DEPLOYMENT.sources = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/QtContacts.dll
    CONTACTS_DEPLOYMENT.path = /Windows

    # Plugins
    CONTACTS_PLUGINS_DEPLOYMENT.sources = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/plugins/*.dll
    CONTACTS_PLUGINS_DEPLOYMENT.path = /resource/qt/plugins/contacts

    DEPLOYMENT += CONTACTS_DEPLOYMENT CONTACTS_PLUGINS_DEPLOYMENT
}
symbian {
    # Main library
    CONTACTS_DEPLOYMENT.sources = QtContacts.dll
    CONTACTS_DEPLOYMENT.path = \sys\bin

    # Engine plugins should be installed in their own .pro
    DEPLOYMENT += CONTACTS_DEPLOYMENT
}

# Add the output dirs to the link path too
LIBS += -L$$DESTDIR

DEPENDPATH += . $$SOURCE_DIR
INCLUDEPATH += . \
    $$SOURCE_DIR \
    $$SOURCE_DIR/contacts \
    $$SOURCE_DIR/contacts/details \
    $$SOURCE_DIR/contacts/engines \
    $$SOURCE_DIR/contacts/filters \
    $$SOURCE_DIR/contacts/requests

######################################################################
#
# Mobility API project - common QMake settings
#
######################################################################

CONFIG += debug_and_release build_all

# On win32 and mac, debug and release libraries are named differently.
# We must follow the debug and release settings Qt was compiled with:
# build debug iff Qt built debug, build release iff Qt built release.
win32|mac {
    !contains(QT_CONFIG,debug)|!contains(QT_CONFIG,release) {
        CONFIG -= debug_and_release debug release
        contains(QT_CONFIG,debug):  CONFIG+=debug
        contains(QT_CONFIG,release):CONFIG+=release
    }
}

# Make sure this goes everywhere we need it
symbian: load(data_caging_paths)

CONFIG(debug, debug|release) {
    SUBDIRPART = Debug
} else {
    SUBDIRPART = Release
}

# Which backend we're building
## memory / invalid / symbian / windows / vcard / kabc etc.
CONTACTS_BACKENDS = memory invalid
wince*: CONTACTS_BACKENDS += wince
symbian: CONTACTS_BACKENDS += symbian

symbian:CONTACTS_BACKENDS += symbians60
wince*:CONTACTS_BACKENDS += wince

# Figure out the root of where stuff should go (this could be done via configure)
OUTPUT_DIR = $$PWD
SOURCE_DIR = $$PWD

#test whether we have a unit test
!testcase {
    # Normal library/plugin/example code
    OBJECTS_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET
    !plugin:!testplugin {
        DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin
    } else {
        # This is where plugins get built
        testplugin:DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin/plugins/contacts
        !testplugin:DESTDIR = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/plugins/contacts

        # And since we're a plugin, add the base lib path to the lib dirs
        LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against base dir as well
    }
    MOC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/$$SUBDIRPART/$$TARGET/rcc

} else {
    # Unit test code (no plugins! test plugins are just normal plugins installed elsewhere)
    QT *= testlib
    CONFIG += console
    CONFIG -= app_bundle
    OBJECTS_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET
    DESTDIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/bin
    MOC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/moc
    RCC_DIR = $$OUTPUT_DIR/build/tests/$$SUBDIRPART/$$TARGET/rcc

    LIBS += -L$$OUTPUT_DIR/build/$$SUBDIRPART/bin  #link against library that we test
}

INCLUDEPATH *= $$MOC_DIR
INCLUDEPATH *= $$RCC_DIR

# Add files for deployment
wince* {
    # Main library
    CONTACTS_DEPLOYMENT.sources = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/QtContacts.dll
    CONTACTS_DEPLOYMENT.path = /Windows

    # Plugins
    CONTACTS_PLUGINS_DEPLOYMENT.sources = $$OUTPUT_DIR/build/$$SUBDIRPART/bin/plugins/*.dll
    CONTACTS_PLUGINS_DEPLOYMENT.path = /resource/qt/plugins/contacts

    DEPLOYMENT += CONTACTS_DEPLOYMENT CONTACTS_PLUGINS_DEPLOYMENT
}
symbian {
    # Main library
    CONTACTS_DEPLOYMENT.sources = QtContacts.dll
    CONTACTS_DEPLOYMENT.path = \sys\bin

    # Engine plugins should be installed in their own .pro
    DEPLOYMENT += CONTACTS_DEPLOYMENT
}

# Add the output dirs to the link path too
LIBS += -L$$DESTDIR

DEPENDPATH += . $$SOURCE_DIR
INCLUDEPATH += . \
    $$SOURCE_DIR \
    $$SOURCE_DIR/contacts \
    $$SOURCE_DIR/contacts/details \
    $$SOURCE_DIR/contacts/engines \
    $$SOURCE_DIR/contacts/filters \
    $$SOURCE_DIR/contacts/requests


Bump version for release.

Bump version for release.


Changes: Add outputFiles() function to config.pri

Details: Add an outputFiles() function which replaces variables in
in-files with sed on qmake run.

Full, original commit at 4fe34e6aa8422f6a65b29fdfca1461f2ad0f17de in maliit-framework

MALIIT_INTERFACE_VERSION = 0.20

!nomeegotouch {
    include(defines-legacy.pri)
} else {
    include(defines.pri)
}

# Linker optimization for release build
QMAKE_LFLAGS_RELEASE+=-Wl,--as-needed
# Compiler warnings are error if the build type is debug
QMAKE_CXXFLAGS_DEBUG+=-Werror

isEmpty(M_IM_VERSION) {
    M_IM_VERSION=$$system(sed -e \'/^meego-im-framework/!d\'  -e \'s/^meego-im-framework (\\([^-~]*\\)[-~].*).*$/\\1/\' $$PWD/debian/changelog | head -1)
}

isEmpty(M_IM_PREFIX) {
    M_IM_PREFIX = /usr
}
isEmpty(M_IM_INSTALL_BIN) {
    M_IM_INSTALL_BIN = $$M_IM_PREFIX/bin
}
isEmpty(M_IM_INSTALL_LIBS) {
    M_IM_INSTALL_LIBS = $$M_IM_PREFIX/lib
}
isEmpty(M_IM_INSTALL_HEADERS) {
    M_IM_INSTALL_HEADERS = $$M_IM_PREFIX/include
}
isEmpty(M_IM_INSTALL_SCHEMAS) {
    M_IM_INSTALL_SCHEMAS = /usr/share/gconf/schemas
}

M_IM_PLUGINS_DIR = $$M_IM_INSTALL_LIBS/$$MALIIT_PLUGINS
DEFINES += M_IM_PLUGINS_DIR=\\\"$$M_IM_PLUGINS_DIR\\\"

isEmpty(M_IM_ENABLE_MULTITOUCH) {
    M_IM_ENABLE_MULTITOUCH=true
}

!nomeegotouch {
    M_IM_DEFAULT_PLUGIN = libmeego-keyboard.so
    M_IM_DEFAULT_SUBVIEW = en_gb.xml
} else {
    M_IM_DEFAULT_PLUGIN = libmeego-keyboard-quick.so
    M_IM_DEFAULT_SUBVIEW =
}

mac {
    # Do mac stuff here
    M_BUILD_FEATURES = debug
    M_PROFILE_PARTS =
    INCLUDEPATH += include/
}

defineTest(outputFile) {
    out = $$OUT_PWD/$$1
    in = $$PWD/$${1}.in

    !exists($$in) {
        error($$in does not exist!)
        return(false)
    }

    variables = M_IM_FRAMEWORK_FEATURE \
                M_IM_PREFIX \
                M_IM_INSTALL_BIN \
                M_IM_INSTALL_HEADERS \
                M_IM_INSTALL_LIBS \
                M_IM_PLUGINS_DIR \
                M_IM_VERSION \
                M_IM_ENABLE_MULTITOUCH \
                M_IM_DEFAULT_PLUGIN \
                M_IM_DEFAULT_SUBVIEW \

    command = "sed"
    for(var, variables) {
       command += "-e \"s:@$$var@:$$eval($$var):g\""
    }
    command += $$in > $$out

    system(mkdir -p $$dirname(out))
    system($$command)
    system(chmod --reference=$$in $$out)

    return(true)
}

defineTest(outputFiles) {
    files = $$ARGS

    for(file, files) {
        !outputFile($$file):return(false)
    }

    return(true)
}


remove sqlite linking from pri

remove sqlite linking from pri


Add the private_includes path to the modules .pri file

QT_DECLARATIVE_VERSION = $$QT_VERSION
QT_DECLARATIVE_MAJOR_VERSION = $$QT_MAJOR_VERSION
QT_DECLARATIVE_MINOR_VERSION = $$QT_MINOR_VERSION
QT_DECLARATIVE_PATCH_VERSION = $$QT_PATCH_VERSION

QT.declarative.name = QtDeclarative
QT.declarative.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDeclarative
QT.declarative.private_includes = $$QT_MODULE_INCLUDE_BASE/QtDeclarative/private
QT.declarative.sources = $$QT_MODULE_BASE/src/declarative
QT.declarative.libs = $$QT_MODULE_LIB_BASE
QT.declarative.depends = gui script network

QT_DECLARATIVE_VERSION = $$QT_VERSION
QT_DECLARATIVE_MAJOR_VERSION = $$QT_MAJOR_VERSION
QT_DECLARATIVE_MINOR_VERSION = $$QT_MINOR_VERSION
QT_DECLARATIVE_PATCH_VERSION = $$QT_PATCH_VERSION

QT.declarative.name = QtDeclarative
QT.declarative.includes = $$QT_MODULE_INCLUDE_BASE $$QT_MODULE_INCLUDE_BASE/QtDeclarative
QT.declarative.sources = $$QT_MODULE_BASE/src/declarative
QT.declarative.libs = $$QT_MODULE_LIB_BASE
QT.declarative.depends = gui script network


Fix previus commit

Fix previus commit

#openFrameworks path.
CONFIG += USE_PRECOMPILED_LIB
OF = #OF_PATH#
win32:CONFIG(release, debug|release): {
    QMAKE_LFLAGS += /NODEFAULTLIB:PocoFoundationmd.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMT
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBC.LIBS
    QMAKE_LFLAGS += /NODEFAULTLIB:atlthunk.lib

    DEFINES += "WIN32"
    DEFINES += "NDEBUG"
    DEFINES += "_CONSOLE"
    DEFINES += "POCO_STATIC"
    DEFINES += "CAIRO_WIN32_STATIC_BUILD"
    DEFINES += "DISABLE_SOME_FLOATING_POINT"
    DEFINES += "_UNICODE"
    DEFINES += "UNICODE"
}
else:win32:CONFIG(debug, debug|release): {
    QMAKE_LFLAGS += /NODEFAULTLIB:PocoFoundationmdd.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:atlthunk.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:msvcrt
    QMAKE_LFLAGS += /NODEFAULTLIB:libcmt
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBC
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMTD

    DEFINES += "WIN32"
    DEFINES += "_DEBUG"
    DEFINES += "_CONSOLE"
    DEFINES += "POCO_STATIC"
    DEFINES += "CAIRO_WIN32_STATIC_BUILD"
    DEFINES += "DISABLE_SOME_FLOATING_POINT"
    DEFINES += "_UNICODE"
    DEFINES += "UNICODE"
}

#GLUT
LIBS += $$OF/libs/glut/lib/vs/glut32.lib
INCLUDEPATH += $$OF/libs/glut/include

#GLFW
LIBS += $$OF/libs/glfw/lib/vs/glfw3.lib
INCLUDEPATH += $$OF/libs/glfw/include
INCLUDEPATH += $$OF/libs/glfw/include/GLFW

#RTAUDIO
win32:CONFIG(debug, debug|release):LIBS += $$OF/libs/rtAudio/lib/vs/rtAudioD.lib
else:win32:CONFIG(release, debug|release):LIBS += $$OF/libs/rtAudio/lib/vs/rtAudio.lib
INCLUDEPATH += $$OF/libs/rtAudio/include

#FREEIMAGE
LIBS += $$OF/libs/FreeImage/lib/vs/FreeImage.lib
INCLUDEPATH += $$OF/libs/FreeImage/include

#FREETYPE
LIBS += $$OF/libs/freetype/lib/vs/libfreetype.lib
INCLUDEPATH += $$OF/libs/freetype/include
INCLUDEPATH += $$OF/libs/freetype/include/freetype2

#QUICKTIME
LIBS += $$OF/libs/quicktime/lib/vs/qtmlClient.lib
LIBS += $$OF/libs/quicktime/lib/vs/QTSClient.lib
LIBS += $$OF/libs/quicktime/lib/vs/Rave.lib
INCLUDEPATH += $$OF/libs/quicktime/include

#FMODEX
LIBS += $$OF/libs/fmodex/lib/vs/fmodex_vc.lib
INCLUDEPATH += $$OF/libs/fmodex/include

#VIDEOINPUT
win32:CONFIG(debug, debug|release):LIBS += $$OF/libs/videoInput/lib/vs/videoInputD.lib
else:win32:CONFIG(release, debug|release):LIBS += $$OF/libs/videoInput/lib/vs/videoInput.lib
INCLUDEPATH += $$OF/libs/videoInput/include

#CAIRO
LIBS += $$OF/libs/cairo/lib/vs/cairo-static.lib
LIBS += $$OF/libs/cairo/lib/vs/pixman-1.lib
INCLUDEPATH += $$OF/libs/cairo/include
INCLUDEPATH += $$OF/libs/cairo/include/libpng15
INCLUDEPATH += $$OF/libs/cairo/include/pixman-1
INCLUDEPATH += $$OF/libs/cairo/include/cairo

#GLEW
LIBS += $$OF/libs/glew/lib/vs/glew32s.lib
INCLUDEPATH += $$OF/libs/glew/include

#GLU
LIBS += $$OF/libs/glu/lib/vs/glu32.lib
INCLUDEPATH += $$OF/libs/glu/include

#OPENSSL
LIBS += $$OF/libs/openssl/lib/vs/libeay32md.lib
LIBS += $$OF/libs/openssl/lib/vs/ssleay32md.lib
INCLUDEPATH += $$OF/libs/openssl/include
INCLUDEPATH += $$OF/libs/openssl/include/openssl

#POCO
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoCryptomdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoCryptomd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoUtilmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoUtilmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoXMLmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoXMLmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetSSLmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetSSLmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoFoundationmdd.lib
win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoFoundationmd.lib
INCLUDEPATH += $$OF/libs/poco/include

#TESS2
LIBS += $$OF/libs/tess2/lib/vs/tess2.lib
INCLUDEPATH += $$OF/libs/tess2/include

#SYSTEM LIBS
LIBS += -lmsimg32
LIBS += -lOpenGL32
LIBS += -lkernel32
LIBS += -lsetupapi
LIBS += -lVfw32
LIBS += -lcomctl32
LIBS += -ldsound
LIBS += -luser32
LIBS += -lgdi32
LIBS += -lwinspool
LIBS += -lcomdlg32
LIBS += -ladvapi32
LIBS += -lshell32
LIBS += -lole32
LIBS += -loleaut32
LIBS += -luuid
LIBS += -lcrypt32
LIBS += -lWs2_32
LIBS += -lodbc32
LIBS += -lodbccp32
LIBS += -lGLu32

#OPENFRAMEWORKS
INCLUDEPATH += $$OF/libs/openFrameworks
INCLUDEPATH += $$OF/libs/openFrameworks/types
INCLUDEPATH += $$OF/libs/openFrameworks/sound
INCLUDEPATH += $$OF/libs/openFrameworks/video
INCLUDEPATH += $$OF/libs/openFrameworks/3d
INCLUDEPATH += $$OF/libs/openFrameworks/math
INCLUDEPATH += $$OF/libs/openFrameworks/events
INCLUDEPATH += $$OF/libs/openFrameworks/utils
INCLUDEPATH += $$OF/libs/openFrameworks/gl
INCLUDEPATH += $$OF/libs/openFrameworks/app
INCLUDEPATH += $$OF/libs/openFrameworks/graphics
INCLUDEPATH += $$OF/libs/openFrameworks/communication

USE_PRECOMPILED_LIB {
    win32:CONFIG(debug, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_debug.lib
    else:win32:CONFIG(release, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_release.lib
}

if(exists($$OF_LIB_PATH)) {
    LIBS += $$OF_LIB_PATH
    message("Using precompiled library for OF")
}
else {
message("Compiling OF")
#3d
SOURCES += $$OF/libs/openFrameworks/3d/of3dPrimitives.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofMesh.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofNode.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofCamera.cpp
SOURCES += $$OF/libs/openFrameworks/3d/of3dUtils.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofEasyCam.cpp

HEADERS += $$OF/libs/openFrameworks/3d/of3dPrimitives.h
HEADERS += $$OF/libs/openFrameworks/3d/ofMesh.h
HEADERS += $$OF/libs/openFrameworks/3d/ofNode.h
HEADERS += $$OF/libs/openFrameworks/3d/ofCamera.h
HEADERS += $$OF/libs/openFrameworks/3d/of3dUtils.h
HEADERS += $$OF/libs/openFrameworks/3d/ofEasyCam.h

#app
SOURCES += $$OF/libs/openFrameworks/app/ofAppGLFWWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppGlutWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppNoWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppRunner.cpp

HEADERS += $$OF/libs/openFrameworks/app/ofAppBaseWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppGLFWWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppGlutWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppNoWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppRunner.h
HEADERS += $$OF/libs/openFrameworks/app/ofBaseApp.h

#communication
SOURCES += $$OF/libs/openFrameworks/communication/ofSerial.cpp
SOURCES += $$OF/libs/openFrameworks/communication/ofArduino.cpp

HEADERS += $$OF/libs/openFrameworks/communication/ofSerial.h
HEADERS += $$OF/libs/openFrameworks/communication/ofArduino.h

#events
SOURCES += $$OF/libs/openFrameworks/events/ofEvents.cpp

HEADERS += $$OF/libs/openFrameworks/events/ofEvents.h
HEADERS += $$OF/libs/openFrameworks/events/ofEventUtils.h

#gl
SOURCES += $$OF/libs/openFrameworks/gl/ofFbo.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLProgrammableRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLUtils.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofLight.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofMaterial.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofShader.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofTexture.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofVbo.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofVboMesh.cpp

HEADERS += $$OF/libs/openFrameworks/gl/ofFbo.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLProgrammableRenderer.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLRenderer.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLUtils.h
HEADERS += $$OF/libs/openFrameworks/gl/ofLight.h
HEADERS += $$OF/libs/openFrameworks/gl/ofMaterial.h
HEADERS += $$OF/libs/openFrameworks/gl/ofShader.h
HEADERS += $$OF/libs/openFrameworks/gl/ofTexture.h
HEADERS += $$OF/libs/openFrameworks/gl/ofVbo.h
HEADERS += $$OF/libs/openFrameworks/gl/ofVboMesh.h

#graphics
SOURCES += $$OF/libs/openFrameworks/graphics/of3dGraphics.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofBitmapFont.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofCairoRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofGraphics.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofImage.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPath.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPixels.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPolyline.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofRendererCollection.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofTessellator.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofTrueTypeFont.cpp

HEADERS += $$OF/libs/openFrameworks/graphics/of3dGraphics.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofBitmapFont.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofCairoRenderer.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofGraphics.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofImage.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPath.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPixels.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPolyline.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofRendererCollection.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofTessellator.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofTrueTypeFont.h

#math
SOURCES += $$OF/libs/openFrameworks/math/ofMath.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofMatrix3x3.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofMatrix4x4.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofQuaternion.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofVec2f.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofVec4f.cpp

HEADERS += $$OF/libs/openFrameworks/math/ofMath.h
HEADERS += $$OF/libs/openFrameworks/math/ofMatrix3x3.h
HEADERS += $$OF/libs/openFrameworks/math/ofMatrix4x4.h
HEADERS += $$OF/libs/openFrameworks/math/ofQuaternion.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec2f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec3f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec4f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVectorMath.h

#sound
SOURCES += $$OF/libs/openFrameworks/sound/ofFmodSoundPlayer.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofRtAudioSoundStream.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofSoundPlayer.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofSoundStream.cpp

HEADERS += $$OF/libs/openFrameworks/sound/ofBaseSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofBaseSoundStream.h
HEADERS += $$OF/libs/openFrameworks/sound/ofFmodSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofRtAudioSoundStream.h
HEADERS += $$OF/libs/openFrameworks/sound/ofSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofSoundStream.h

#types
SOURCES += $$OF/libs/openFrameworks/types/ofBaseTypes.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofColor.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofParameter.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofParameterGroup.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofRectangle.cpp

HEADERS += $$OF/libs/openFrameworks/types/ofBaseTypes.h
HEADERS += $$OF/libs/openFrameworks/types/ofColor.h
HEADERS += $$OF/libs/openFrameworks/types/ofParameter.h
HEADERS += $$OF/libs/openFrameworks/types/ofParameterGroup.h
HEADERS += $$OF/libs/openFrameworks/types/ofPoint.h
HEADERS += $$OF/libs/openFrameworks/types/ofRectangle.h
HEADERS += $$OF/libs/openFrameworks/types/ofTypes.h

#utils
SOURCES += $$OF/libs/openFrameworks/utils/ofFileUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofLog.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofMatrixStack.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofSystemUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofThread.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofURLFileLoader.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofXml.cpp

HEADERS += $$OF/libs/openFrameworks/utils/ofConstants.h
HEADERS += $$OF/libs/openFrameworks/utils/ofFileUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofLog.h
HEADERS += $$OF/libs/openFrameworks/utils/ofMatrixStack.h
HEADERS += $$OF/libs/openFrameworks/utils/ofSystemUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofThread.h
HEADERS += $$OF/libs/openFrameworks/utils/ofURLFileLoader.h
HEADERS += $$OF/libs/openFrameworks/utils/ofUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofXml.h
HEADERS += $$OF/libs/openFrameworks/utils/ofNoise.h

#video
SOURCES += $$OF/libs/openFrameworks/video/ofDirectShowGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQtUtils.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQuickTimeGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQuickTimePlayer.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofVideoGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofVideoPlayer.cpp

HEADERS += $$OF/libs/openFrameworks/video/ofDirectShowGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofQtUtils.h
HEADERS += $$OF/libs/openFrameworks/video/ofQuickTimeGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofQuickTimePlayer.h
HEADERS += $$OF/libs/openFrameworks/video/ofVideoGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofVideoPlayer.h

HEADERS += $$OF/libs/openFrameworks/ofMain.h
}
#addons

#openFrameworks path.
CONFIG += USE_PRECOMPILED_LIB
OF = #OF_PATH#
win32:CONFIG(release, debug|release): {
    QMAKE_LFLAGS += /NODEFAULTLIB:PocoFoundationmd.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMT
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBC.LIBS
    QMAKE_LFLAGS += /NODEFAULTLIB:atlthunk.lib

    DEFINES += "WIN32"
    DEFINES += "NDEBUG"
    DEFINES += "_CONSOLE"
    DEFINES += "POCO_STATIC"
    DEFINES += "CAIRO_WIN32_STATIC_BUILD"
    DEFINES += "DISABLE_SOME_FLOATING_POINT"
    DEFINES += "_UNICODE"
    DEFINES += "UNICODE"
}
else:win32:CONFIG(debug, debug|release): {
    QMAKE_LFLAGS += /NODEFAULTLIB:PocoFoundationmdd.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:atlthunk.lib
    QMAKE_LFLAGS += /NODEFAULTLIB:msvcrt
    QMAKE_LFLAGS += /NODEFAULTLIB:libcmt
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBC
    QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMTD

    DEFINES += "WIN32"
    DEFINES += "_DEBUG"
    DEFINES += "_CONSOLE"
    DEFINES += "POCO_STATIC"
    DEFINES += "CAIRO_WIN32_STATIC_BUILD"
    DEFINES += "DISABLE_SOME_FLOATING_POINT"
    DEFINES += "_UNICODE"
    DEFINES += "UNICODE"
}

#GLUT
LIBS += $$OF/libs/glut/lib/vs/glut32.lib
INCLUDEPATH += $$OF/libs/glut/include

#GLFW
LIBS += $$OF/libs/glfw/lib/vs/glfw3.lib
INCLUDEPATH += $$OF/libs/glfw/include
INCLUDEPATH += $$OF/libs/glfw/include/GLFW

#RTAUDIO
win32:CONFIG(debug, debug|release):LIBS += $$OF/libs/rtAudio/lib/vs/rtAudioD.lib
else:win32:CONFIG(release, debug|release):LIBS += $$OF/libs/rtAudio/lib/vs/rtAudio.lib
INCLUDEPATH += $$OF/libs/rtAudio/include

#FREEIMAGE
LIBS += $$OF/libs/FreeImage/lib/vs/FreeImage.lib
INCLUDEPATH += $$OF/libs/FreeImage/include

#FREETYPE
LIBS += $$OF/libs/freetype/lib/vs/libfreetype.lib
INCLUDEPATH += $$OF/libs/freetype/include
INCLUDEPATH += $$OF/libs/freetype/include/freetype2

#QUICKTIME
LIBS += $$OF/libs/quicktime/lib/vs/qtmlClient.lib
LIBS += $$OF/libs/quicktime/lib/vs/QTSClient.lib
LIBS += $$OF/libs/quicktime/lib/vs/Rave.lib
INCLUDEPATH += $$OF/libs/quicktime/include

#FMODEX
LIBS += $$OF/libs/fmodex/lib/vs/fmodex_vc.lib
INCLUDEPATH += $$OF/libs/fmodex/include

#VIDEOINPUT
win32:CONFIG(debug, debug|release):LIBS += $$OF/libs/videoInput/lib/vs/videoInputD.lib
else:win32:CONFIG(release, debug|release):LIBS += $$OF/libs/videoInput/lib/vs/videoInput.lib
INCLUDEPATH += $$OF/libs/videoInput/include

#CAIRO
LIBS += $$OF/libs/cairo/lib/vs/cairo-static.lib
LIBS += $$OF/libs/cairo/lib/vs/pixman-1.lib
INCLUDEPATH += $$OF/libs/cairo/include
INCLUDEPATH += $$OF/libs/cairo/include/libpng15
INCLUDEPATH += $$OF/libs/cairo/include/pixman-1
INCLUDEPATH += $$OF/libs/cairo/include/cairo

#GLEW
LIBS += $$OF/libs/glew/lib/vs/glew32s.lib
INCLUDEPATH += $$OF/libs/glew/include

#GLU
LIBS += $$OF/libs/glu/lib/vs/glu32.lib
INCLUDEPATH += $$OF/libs/glu/include

#OPENSSL
LIBS += $$OF/libs/openssl/lib/vs/libeay32md.lib
LIBS += $$OF/libs/openssl/lib/vs/ssleay32md.lib
INCLUDEPATH += $$OF/libs/openssl/include
INCLUDEPATH += $$OF/libs/openssl/include/openssl

#POCO
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoCryptomdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoCryptomd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoUtilmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoUtilmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoXMLmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoXMLmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetSSLmdd.lib
else:win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoNetSSLmd.lib
win32:CONFIG(debug, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoFoundationmdd.lib
win32:CONFIG(release, debug|release): LIBS += $$OF/libs/poco/lib/vs/PocoFoundationmd.lib
INCLUDEPATH += $$OF/libs/poco/include

#TESS2
LIBS += $$OF/libs/tess2/lib/vs/tess2.lib
INCLUDEPATH += $$OF/libs/tess2/include

#SYSTEM LIBS
LIBS += -lmsimg32
LIBS += -lOpenGL32
LIBS += -lkernel32
LIBS += -lsetupapi
LIBS += -lVfw32
LIBS += -lcomctl32
LIBS += -ldsound
LIBS += -luser32
LIBS += -lgdi32
LIBS += -lwinspool
LIBS += -lcomdlg32
LIBS += -ladvapi32
LIBS += -lshell32
LIBS += -lole32
LIBS += -loleaut32
LIBS += -luuid
LIBS += -lcrypt32
LIBS += -lWs2_32
LIBS += -lodbc32
LIBS += -lodbccp32
LIBS += -lGLu32

#OPENFRAMEWORKS
INCLUDEPATH += $$OF/libs/openFrameworks
INCLUDEPATH += $$OF/libs/openFrameworks/types
INCLUDEPATH += $$OF/libs/openFrameworks/sound
INCLUDEPATH += $$OF/libs/openFrameworks/video
INCLUDEPATH += $$OF/libs/openFrameworks/3d
INCLUDEPATH += $$OF/libs/openFrameworks/math
INCLUDEPATH += $$OF/libs/openFrameworks/events
INCLUDEPATH += $$OF/libs/openFrameworks/utils
INCLUDEPATH += $$OF/libs/openFrameworks/gl
INCLUDEPATH += $$OF/libs/openFrameworks/app
INCLUDEPATH += $$OF/libs/openFrameworks/graphics
INCLUDEPATH += $$OF/libs/openFrameworks/communication

USE_PRECOMPILED_LIB {
    win32:CONFIG(debug, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_debug.lib
    else:win32:CONFIG(release, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_release.lib
}

win32:CONFIG(debug, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_debug.lib
else:win32:CONFIG(release, debug|release): OF_LIB_PATH = $$OF/libs/openFrameworksCompiled/lib/vs/openframeworksLib_release.lib

if(exists($$OF_LIB_PATH)) {
    LIBS += $$OF_LIB_PATH
    message("Using precompiled library for OF")
}
else {
message("Compiling OF")
#3d
SOURCES += $$OF/libs/openFrameworks/3d/of3dPrimitives.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofMesh.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofNode.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofCamera.cpp
SOURCES += $$OF/libs/openFrameworks/3d/of3dUtils.cpp
SOURCES += $$OF/libs/openFrameworks/3d/ofEasyCam.cpp

HEADERS += $$OF/libs/openFrameworks/3d/of3dPrimitives.h
HEADERS += $$OF/libs/openFrameworks/3d/ofMesh.h
HEADERS += $$OF/libs/openFrameworks/3d/ofNode.h
HEADERS += $$OF/libs/openFrameworks/3d/ofCamera.h
HEADERS += $$OF/libs/openFrameworks/3d/of3dUtils.h
HEADERS += $$OF/libs/openFrameworks/3d/ofEasyCam.h

#app
SOURCES += $$OF/libs/openFrameworks/app/ofAppGLFWWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppGlutWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppNoWindow.cpp
SOURCES += $$OF/libs/openFrameworks/app/ofAppRunner.cpp

HEADERS += $$OF/libs/openFrameworks/app/ofAppBaseWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppGLFWWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppGlutWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppNoWindow.h
HEADERS += $$OF/libs/openFrameworks/app/ofAppRunner.h
HEADERS += $$OF/libs/openFrameworks/app/ofBaseApp.h

#communication
SOURCES += $$OF/libs/openFrameworks/communication/ofSerial.cpp
SOURCES += $$OF/libs/openFrameworks/communication/ofArduino.cpp

HEADERS += $$OF/libs/openFrameworks/communication/ofSerial.h
HEADERS += $$OF/libs/openFrameworks/communication/ofArduino.h

#events
SOURCES += $$OF/libs/openFrameworks/events/ofEvents.cpp

HEADERS += $$OF/libs/openFrameworks/events/ofEvents.h
HEADERS += $$OF/libs/openFrameworks/events/ofEventUtils.h

#gl
SOURCES += $$OF/libs/openFrameworks/gl/ofFbo.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLProgrammableRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofGLUtils.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofLight.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofMaterial.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofShader.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofTexture.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofVbo.cpp
SOURCES += $$OF/libs/openFrameworks/gl/ofVboMesh.cpp

HEADERS += $$OF/libs/openFrameworks/gl/ofFbo.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLProgrammableRenderer.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLRenderer.h
HEADERS += $$OF/libs/openFrameworks/gl/ofGLUtils.h
HEADERS += $$OF/libs/openFrameworks/gl/ofLight.h
HEADERS += $$OF/libs/openFrameworks/gl/ofMaterial.h
HEADERS += $$OF/libs/openFrameworks/gl/ofShader.h
HEADERS += $$OF/libs/openFrameworks/gl/ofTexture.h
HEADERS += $$OF/libs/openFrameworks/gl/ofVbo.h
HEADERS += $$OF/libs/openFrameworks/gl/ofVboMesh.h

#graphics
SOURCES += $$OF/libs/openFrameworks/graphics/of3dGraphics.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofBitmapFont.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofCairoRenderer.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofGraphics.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofImage.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPath.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPixels.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofPolyline.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofRendererCollection.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofTessellator.cpp
SOURCES += $$OF/libs/openFrameworks/graphics/ofTrueTypeFont.cpp

HEADERS += $$OF/libs/openFrameworks/graphics/of3dGraphics.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofBitmapFont.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofCairoRenderer.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofGraphics.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofImage.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPath.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPixels.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofPolyline.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofRendererCollection.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofTessellator.h
HEADERS += $$OF/libs/openFrameworks/graphics/ofTrueTypeFont.h

#math
SOURCES += $$OF/libs/openFrameworks/math/ofMath.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofMatrix3x3.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofMatrix4x4.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofQuaternion.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofVec2f.cpp
SOURCES += $$OF/libs/openFrameworks/math/ofVec4f.cpp

HEADERS += $$OF/libs/openFrameworks/math/ofMath.h
HEADERS += $$OF/libs/openFrameworks/math/ofMatrix3x3.h
HEADERS += $$OF/libs/openFrameworks/math/ofMatrix4x4.h
HEADERS += $$OF/libs/openFrameworks/math/ofQuaternion.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec2f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec3f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVec4f.h
HEADERS += $$OF/libs/openFrameworks/math/ofVectorMath.h

#sound
SOURCES += $$OF/libs/openFrameworks/sound/ofFmodSoundPlayer.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofRtAudioSoundStream.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofSoundPlayer.cpp
SOURCES += $$OF/libs/openFrameworks/sound/ofSoundStream.cpp

HEADERS += $$OF/libs/openFrameworks/sound/ofBaseSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofBaseSoundStream.h
HEADERS += $$OF/libs/openFrameworks/sound/ofFmodSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofRtAudioSoundStream.h
HEADERS += $$OF/libs/openFrameworks/sound/ofSoundPlayer.h
HEADERS += $$OF/libs/openFrameworks/sound/ofSoundStream.h

#types
SOURCES += $$OF/libs/openFrameworks/types/ofBaseTypes.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofColor.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofParameter.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofParameterGroup.cpp
SOURCES += $$OF/libs/openFrameworks/types/ofRectangle.cpp

HEADERS += $$OF/libs/openFrameworks/types/ofBaseTypes.h
HEADERS += $$OF/libs/openFrameworks/types/ofColor.h
HEADERS += $$OF/libs/openFrameworks/types/ofParameter.h
HEADERS += $$OF/libs/openFrameworks/types/ofParameterGroup.h
HEADERS += $$OF/libs/openFrameworks/types/ofPoint.h
HEADERS += $$OF/libs/openFrameworks/types/ofRectangle.h
HEADERS += $$OF/libs/openFrameworks/types/ofTypes.h

#utils
SOURCES += $$OF/libs/openFrameworks/utils/ofFileUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofLog.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofMatrixStack.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofSystemUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofThread.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofURLFileLoader.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofUtils.cpp
SOURCES += $$OF/libs/openFrameworks/utils/ofXml.cpp

HEADERS += $$OF/libs/openFrameworks/utils/ofConstants.h
HEADERS += $$OF/libs/openFrameworks/utils/ofFileUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofLog.h
HEADERS += $$OF/libs/openFrameworks/utils/ofMatrixStack.h
HEADERS += $$OF/libs/openFrameworks/utils/ofSystemUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofThread.h
HEADERS += $$OF/libs/openFrameworks/utils/ofURLFileLoader.h
HEADERS += $$OF/libs/openFrameworks/utils/ofUtils.h
HEADERS += $$OF/libs/openFrameworks/utils/ofXml.h
HEADERS += $$OF/libs/openFrameworks/utils/ofNoise.h

#video
SOURCES += $$OF/libs/openFrameworks/video/ofDirectShowGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQtUtils.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQuickTimeGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofQuickTimePlayer.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofVideoGrabber.cpp
SOURCES += $$OF/libs/openFrameworks/video/ofVideoPlayer.cpp

HEADERS += $$OF/libs/openFrameworks/video/ofDirectShowGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofQtUtils.h
HEADERS += $$OF/libs/openFrameworks/video/ofQuickTimeGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofQuickTimePlayer.h
HEADERS += $$OF/libs/openFrameworks/video/ofVideoGrabber.h
HEADERS += $$OF/libs/openFrameworks/video/ofVideoPlayer.h

HEADERS += $$OF/libs/openFrameworks/ofMain.h
}
#addons


rcc is separate step for generated editors now

EDITOR_PATH = $$PWD/../$$QREAL_EDITOR_PATH

win32 {
	QRXC_COMMAND = cd $$EDITOR_PATH && $$QRXC
} else {
	QRXC_COMMAND = export LD_LIBRARY_PATH=$$QRXC_DIR && cd $$EDITOR_PATH && $$QRXC
}

qrxc_source.commands = $$QRXC_COMMAND $$QREAL_XML $$ROOT
qrxc_source.depends = $$QRXC $$QREAL_XML_DEPENDS
qrxc_source.input = QREAL_XML
qrxc_source.output = $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_source.variable_out = SOURCES
qrxc_source.name = QReal_XML_Compiler

QMAKE_EXTRA_COMPILERS += qrxc_source

FAKE_COMMAND = cd .

qrxc_header.commands = $$FAKE_COMMAND
qrxc_header.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_header.input = QREAL_XML
qrxc_header.output = $$EDITOR_PATH/generated/pluginInterface.h
qrxc_header.variable_out = MOC_HEADERS

QMAKE_EXTRA_COMPILERS += qrxc_header

qrxc_elements.commands = $$FAKE_COMMAND
qrxc_elements.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_elements.input = QREAL_XML
qrxc_elements.output = $$EDITOR_PATH/generated/elements.h
qrxc_elements.variable_out = HEADERS

QMAKE_EXTRA_COMPILERS += qrxc_elements

qrxc_resource.commands = $$FAKE_COMMAND
qrxc_resource.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_resource.input = QREAL_XML
qrxc_resource.output = $$EDITOR_PATH/plugin.qrc
qrxc_resource.variable_out = NEW_RESOURCES

QMAKE_EXTRA_COMPILERS += qrxc_resource

# Here we need to call moc explicitly because by default it will be called before any files were generated
new_moc.output  = $$MOC_DIR/moc_${QMAKE_FILE_BASE}.cpp
new_moc.commands = moc ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT}
new_moc.input = MOC_HEADERS
new_moc.variable_out = SOURCES

QMAKE_EXTRA_COMPILERS += new_moc

# Here we need to call rcc explicitly because by tefault it will be called before any files were generated
new_rcc.output  = $$RCC_DIR/rcc_${QMAKE_FILE_BASE}.cpp
new_rcc.commands = rcc ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT}
new_rcc.input = NEW_RESOURCES
new_rcc.variable_out = SOURCES

QMAKE_EXTRA_COMPILERS += new_rcc

include(extraCompilersSdf.pri)

EDITOR_PATH = $$PWD/../$$QREAL_EDITOR_PATH

win32 {
	QRXC_COMMAND = cd $$EDITOR_PATH && $$QRXC
} else {
	QRXC_COMMAND = export LD_LIBRARY_PATH=$$QRXC_DIR && cd $$EDITOR_PATH && $$QRXC
}

qrxc_source.commands = $$QRXC_COMMAND $$QREAL_XML $$ROOT
qrxc_source.depends = $$QRXC $$QREAL_XML_DEPENDS
qrxc_source.input = QREAL_XML
qrxc_source.output = $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_source.variable_out = SOURCES
qrxc_source.name = QReal_XML_Compiler

QMAKE_EXTRA_COMPILERS += qrxc_source

FAKE_COMMAND = cd .

qrxc_header.commands = $$FAKE_COMMAND
qrxc_header.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_header.input = QREAL_XML
qrxc_header.output = $$EDITOR_PATH/generated/pluginInterface.h
qrxc_header.variable_out = MOC_HEADERS

QMAKE_EXTRA_COMPILERS += qrxc_header

qrxc_elements.commands = $$FAKE_COMMAND
qrxc_elements.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_elements.input = QREAL_XML
qrxc_elements.output = $$EDITOR_PATH/generated/elements.h
qrxc_elements.variable_out = HEADERS

QMAKE_EXTRA_COMPILERS += qrxc_elements

qrxc_resource.commands = $$FAKE_COMMAND
qrxc_resource.depends = $$QRXC $$QREAL_XML_DEPENDS $$EDITOR_PATH/generated/pluginInterface.cpp
qrxc_resource.input = QREAL_XML
qrxc_resource.output = $$EDITOR_PATH/plugin.qrc
qrxc_resource.variable_out = RESOURCES

QMAKE_EXTRA_COMPILERS += qrxc_resource

# Here we need to call moc explicitly because by tefault it will be called before any files were generated
new_moc.output  = $$MOC_DIR/moc_${QMAKE_FILE_BASE}.cpp
new_moc.commands = moc ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT}
new_moc.input = MOC_HEADERS
new_moc.variable_out = SOURCES

QMAKE_EXTRA_COMPILERS += new_moc

include(extraCompilersSdf.pri)


typo

typo

git-svn-id: e2fa1b4f04257a65cc3162f75ad5f19d327daceb@758 85bd2434-ea95-11dd-8fb1-9960f2a117f8

include(../qxmpp.pri)

TEMPLATE = app

QT += network xml

CONFIG += console

INCLUDEPATH += $$QXMPP_INCLUDE_DIR
LIBS += -L$$QXMPP_LIBRARY_DIR -l$$QXMPP_LIBRARY_NAME

# FIXME: we should be able to use the link_prl option to automatically pull
# in the extra libraries which the qxmpp library needs, but this does not
# seem to work on win32, so we specify the dependencies here:
unix {
    LIBS += -lresolv
}
win32 {
    LIBS += -ldnsapi
}

# FIXME: we need to express a dependency on the library, but the file name
# depends on the platform and whether the library is static or dynamic
# PRE_TARGETDEPS += $${QXMPP_LIBRARY_DIR}/lib$${QXMPP_LIB}.a

include(../qxmpp.pri)

TEMPLATE = app

QT += network xml

CONFIG += console

INCLUDEPATH += $$QXMPP_INCLUDE_DIR
LIBS += -L$$QXMPP_LIBRARY_DIR -l$$QXMPP_LIBRARY_NAME

# FIXME: we should be able to use the link_prl option to automatically pull
# in the extra libraries which the qxmpp library needs, but this does not
# seem to work on win32, so respecify the dependencies here:
unix {
    LIBS += -lresolv
}
win32 {
    LIBS += -ldnsapi
}

# FIXME: we need to express a dependency on the library, but the file name
# depends on the platform and whether the library is static or dynamic
# PRE_TARGETDEPS += $${QXMPP_LIBRARY_DIR}/lib$${QXMPP_LIB}.a


OSX: fix build of manual test

OSX: fix build of manual test

Change-Id: I2e6a662770f15a565a784bdfad337ba7f2b9692a
Reviewed-by: Eike Ziller <c142da16c73a95a82d35191bcc55b22835617128@theqtcompany.com>

DEPENDPATH += $$PWD
INCLUDEPATH += $$PWD

DEFINES *= QT_NO_CAST_FROM_ASCII
DEFINES += PATH_PREPROCESSOR_CONFIG=\\\"$$PWD/pp-configuration.inc\\\"
DEFINES += QTCREATOR_UTILS_STATIC_LIB

HEADERS += \
    $$PWD/cplusplus-tools-utils.h \
    $$PWD/../../libs/utils/environment.h \
    $$PWD/../../libs/utils/fileutils.h \
    $$PWD/../../libs/utils/qtcassert.h \
    $$PWD/../../libs/utils/savefile.h

SOURCES += \
    $$PWD/cplusplus-tools-utils.cpp \
    $$PWD/../../libs/utils/environment.cpp \
    $$PWD/../../libs/utils/fileutils.cpp \
    $$PWD/../../libs/utils/qtcassert.cpp \
    $$PWD/../../libs/utils/savefile.cpp

win32:LIBS += -luser32 -lshell32

osx:OBJECTIVE_SOURCES += $$PWD/../../libs/utils/fileutils_mac.mm
osx:LIBS += -framework Foundation