mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-07-01 13:56:06 -04:00
--User changes
-Add new preset dimensions to the right click menu of the width and height fields in the editor. -Change QSS stylesheets to properly handle tabs. -Make tabs rectangular by default. For some reason, they had always been triangular. --Bug fixes -Incremental rendering times in the editor were wrong. --Code changes -Migrate to Qt6. There is probably more work to be done here. -Migrate to VS2022. -Migrate to Wix 4 installer. -Change installer to install to program files for all users. -Fix many VS2022 code analysis warnings. -No longer use byte typedef, because std::byte is now a type. Revert all back to unsigned char. -Upgrade OpenCL headers to version 3.0 and keep locally now rather than trying to look for system files. -No longer link to Nvidia or AMD specific OpenCL libraries. Use the generic installer located at OCL_ROOT too. -Add the ability to change OpenCL grid dimensions. This was attempted for investigating possible performance improvments, but made no difference. This has not been verified on Linux or Mac yet.
This commit is contained in:
@ -1,91 +1,91 @@
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin
|
||||
CONFIG += shared
|
||||
CONFIG -= app_bundle
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = ember
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information.
|
||||
win32 {
|
||||
RC = $$RCPATH/Ember.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/Ember)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Project specific compiler flags.
|
||||
QMAKE_CXXFLAGS += -BUILDING_EMBER
|
||||
|
||||
win32 {
|
||||
DEFINES += BUILDING_EMBER
|
||||
}
|
||||
|
||||
!win32 {
|
||||
target.path = $$LIB_INSTALL_DIR
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/EmberPch.h
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/Affine2D.cpp \
|
||||
$$PRJ_SRC_DIR/DllMain.cpp \
|
||||
$$PRJ_SRC_DIR/Ember.cpp \
|
||||
$$PRJ_SRC_DIR/EmberPch.cpp \
|
||||
$$PRJ_SRC_DIR/EmberToXml.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteList.cpp \
|
||||
$$PRJ_SRC_DIR/RendererBase.cpp \
|
||||
$$PRJ_SRC_DIR/Renderer.cpp \
|
||||
$$PRJ_SRC_DIR/VariationList.cpp \
|
||||
$$PRJ_SRC_DIR/Spline.cpp \
|
||||
$$PRJ_SRC_DIR/XmlToEmber.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/Affine2D.h \
|
||||
$$PRJ_SRC_DIR/CarToRas.h \
|
||||
$$PRJ_SRC_DIR/Spline.h \
|
||||
$$PRJ_SRC_DIR/Curves.h \
|
||||
$$PRJ_SRC_DIR/DensityFilter.h \
|
||||
$$PRJ_SRC_DIR/EmberDefines.h \
|
||||
$$PRJ_SRC_DIR/Ember.h \
|
||||
$$PRJ_SRC_DIR/EmberMotion.h \
|
||||
$$PRJ_SRC_DIR/EmberPch.h \
|
||||
$$PRJ_SRC_DIR/EmberToXml.h \
|
||||
$$PRJ_SRC_DIR/Interpolate.h \
|
||||
$$PRJ_SRC_DIR/Isaac.h \
|
||||
$$PRJ_SRC_DIR/Iterator.h \
|
||||
$$PRJ_SRC_DIR/Palette.h \
|
||||
$$PRJ_SRC_DIR/PaletteList.h \
|
||||
$$PRJ_SRC_DIR/Point.h \
|
||||
$$PRJ_SRC_DIR/RendererBase.h \
|
||||
$$PRJ_SRC_DIR/Renderer.h \
|
||||
$$PRJ_SRC_DIR/SheepTools.h \
|
||||
$$PRJ_SRC_DIR/SpatialFilter.h \
|
||||
$$PRJ_SRC_DIR/TemporalFilter.h \
|
||||
$$PRJ_SRC_DIR/Timing.h \
|
||||
$$PRJ_SRC_DIR/Utils.h \
|
||||
$$PRJ_SRC_DIR/Variation.h \
|
||||
$$PRJ_SRC_DIR/VariationList.h \
|
||||
$$PRJ_SRC_DIR/Variations01.h \
|
||||
$$PRJ_SRC_DIR/Variations02.h \
|
||||
$$PRJ_SRC_DIR/Variations03.h \
|
||||
$$PRJ_SRC_DIR/Variations04.h \
|
||||
$$PRJ_SRC_DIR/Variations05.h \
|
||||
$$PRJ_SRC_DIR/Variations06.h \
|
||||
$$PRJ_SRC_DIR/Variations07.h \
|
||||
$$PRJ_SRC_DIR/Variations08.h \
|
||||
$$PRJ_SRC_DIR/VariationsDC.h \
|
||||
$$PRJ_SRC_DIR/VarFuncs.h \
|
||||
$$PRJ_SRC_DIR/Xform.h \
|
||||
$$PRJ_SRC_DIR/XmlToEmber.h
|
||||
|
||||
#message("")
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin
|
||||
CONFIG += shared
|
||||
CONFIG -= app_bundle
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = ember
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information.
|
||||
win32 {
|
||||
RC = $$RCPATH/Ember.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/Ember)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Project specific compiler flags.
|
||||
QMAKE_CXXFLAGS += -BUILDING_EMBER
|
||||
|
||||
win32 {
|
||||
DEFINES += BUILDING_EMBER
|
||||
}
|
||||
|
||||
!win32 {
|
||||
target.path = $$LIB_INSTALL_DIR
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/EmberPch.h
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/Affine2D.cpp \
|
||||
$$PRJ_SRC_DIR/DllMain.cpp \
|
||||
$$PRJ_SRC_DIR/Ember.cpp \
|
||||
$$PRJ_SRC_DIR/EmberPch.cpp \
|
||||
$$PRJ_SRC_DIR/EmberToXml.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteList.cpp \
|
||||
$$PRJ_SRC_DIR/RendererBase.cpp \
|
||||
$$PRJ_SRC_DIR/Renderer.cpp \
|
||||
$$PRJ_SRC_DIR/VariationList.cpp \
|
||||
$$PRJ_SRC_DIR/Spline.cpp \
|
||||
$$PRJ_SRC_DIR/XmlToEmber.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/Affine2D.h \
|
||||
$$PRJ_SRC_DIR/CarToRas.h \
|
||||
$$PRJ_SRC_DIR/Spline.h \
|
||||
$$PRJ_SRC_DIR/Curves.h \
|
||||
$$PRJ_SRC_DIR/DensityFilter.h \
|
||||
$$PRJ_SRC_DIR/EmberDefines.h \
|
||||
$$PRJ_SRC_DIR/Ember.h \
|
||||
$$PRJ_SRC_DIR/EmberMotion.h \
|
||||
$$PRJ_SRC_DIR/EmberPch.h \
|
||||
$$PRJ_SRC_DIR/EmberToXml.h \
|
||||
$$PRJ_SRC_DIR/Interpolate.h \
|
||||
$$PRJ_SRC_DIR/Isaac.h \
|
||||
$$PRJ_SRC_DIR/Iterator.h \
|
||||
$$PRJ_SRC_DIR/Palette.h \
|
||||
$$PRJ_SRC_DIR/PaletteList.h \
|
||||
$$PRJ_SRC_DIR/Point.h \
|
||||
$$PRJ_SRC_DIR/RendererBase.h \
|
||||
$$PRJ_SRC_DIR/Renderer.h \
|
||||
$$PRJ_SRC_DIR/SheepTools.h \
|
||||
$$PRJ_SRC_DIR/SpatialFilter.h \
|
||||
$$PRJ_SRC_DIR/TemporalFilter.h \
|
||||
$$PRJ_SRC_DIR/Timing.h \
|
||||
$$PRJ_SRC_DIR/Utils.h \
|
||||
$$PRJ_SRC_DIR/Variation.h \
|
||||
$$PRJ_SRC_DIR/VariationList.h \
|
||||
$$PRJ_SRC_DIR/Variations01.h \
|
||||
$$PRJ_SRC_DIR/Variations02.h \
|
||||
$$PRJ_SRC_DIR/Variations03.h \
|
||||
$$PRJ_SRC_DIR/Variations04.h \
|
||||
$$PRJ_SRC_DIR/Variations05.h \
|
||||
$$PRJ_SRC_DIR/Variations06.h \
|
||||
$$PRJ_SRC_DIR/Variations07.h \
|
||||
$$PRJ_SRC_DIR/Variations08.h \
|
||||
$$PRJ_SRC_DIR/VariationsDC.h \
|
||||
$$PRJ_SRC_DIR/VarFuncs.h \
|
||||
$$PRJ_SRC_DIR/Xform.h \
|
||||
$$PRJ_SRC_DIR/XmlToEmber.h
|
||||
|
||||
#message("")
|
||||
|
@ -1,71 +1,71 @@
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = emberanimate
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberAnimate.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberAnimate)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberAnimate.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberAnimate.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = emberanimate
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberAnimate.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberAnimate)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberAnimate.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberAnimate.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
|
@ -1,191 +1,191 @@
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
|
@ -1,64 +1,63 @@
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin
|
||||
CONFIG += shared
|
||||
CONFIG -= app_bundle
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = embercl
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberCL.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberCL)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Project specific compiler flags.
|
||||
QMAKE_CXXFLAGS += -BUILDING_EMBERCL
|
||||
|
||||
win32 {
|
||||
DEFINES += BUILDING_EMBERCL
|
||||
}
|
||||
|
||||
!win32 {
|
||||
target.path = $$LIB_INSTALL_DIR
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/EmberCLPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/DEOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/DllMain.cpp \
|
||||
$$PRJ_SRC_DIR/FinalAccumOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/FunctionMapper.cpp \
|
||||
$$PRJ_SRC_DIR/IterOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/OpenCLInfo.cpp \
|
||||
$$PRJ_SRC_DIR/OpenCLWrapper.cpp \
|
||||
$$PRJ_SRC_DIR/RendererCL.cpp \
|
||||
$$PRJ_SRC_DIR/RendererClDevice.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/DEOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/EmberCLFunctions.h \
|
||||
$$PRJ_SRC_DIR/EmberCLPch.h \
|
||||
$$PRJ_SRC_DIR/EmberCLStructs.h \
|
||||
$$PRJ_SRC_DIR/FinalAccumOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/FunctionMapper.h \
|
||||
$$PRJ_SRC_DIR/IterOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/OpenCLInfo.h \
|
||||
$$PRJ_SRC_DIR/OpenCLWrapper.h \
|
||||
$$PRJ_SRC_DIR/RendererClDevice.h \
|
||||
$$PRJ_SRC_DIR/RendererCL.h
|
||||
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin
|
||||
CONFIG += shared
|
||||
CONFIG -= app_bundle
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = embercl
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberCL.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberCL)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Project specific compiler flags.
|
||||
QMAKE_CXXFLAGS += -BUILDING_EMBERCL
|
||||
|
||||
win32 {
|
||||
DEFINES += BUILDING_EMBERCL
|
||||
}
|
||||
|
||||
!win32 {
|
||||
target.path = $$LIB_INSTALL_DIR
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/EmberCLPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/DEOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/DllMain.cpp \
|
||||
$$PRJ_SRC_DIR/FinalAccumOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/FunctionMapper.cpp \
|
||||
$$PRJ_SRC_DIR/IterOpenCLKernelCreator.cpp \
|
||||
$$PRJ_SRC_DIR/OpenCLInfo.cpp \
|
||||
$$PRJ_SRC_DIR/OpenCLWrapper.cpp \
|
||||
$$PRJ_SRC_DIR/RendererCL.cpp \
|
||||
$$PRJ_SRC_DIR/RendererClDevice.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/DEOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/EmberCLFunctions.h \
|
||||
$$PRJ_SRC_DIR/EmberCLPch.h \
|
||||
$$PRJ_SRC_DIR/EmberCLStructs.h \
|
||||
$$PRJ_SRC_DIR/FinalAccumOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/FunctionMapper.h \
|
||||
$$PRJ_SRC_DIR/IterOpenCLKernelCreator.h \
|
||||
$$PRJ_SRC_DIR/OpenCLInfo.h \
|
||||
$$PRJ_SRC_DIR/OpenCLWrapper.h \
|
||||
$$PRJ_SRC_DIR/RendererClDevice.h \
|
||||
$$PRJ_SRC_DIR/RendererCL.h
|
@ -1,191 +1,191 @@
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
|
@ -1,71 +1,71 @@
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = embergenome
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberGenome.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberGenome)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberGenome.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberGenome.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = embergenome
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberGenome.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberGenome)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberGenome.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberGenome.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
|
@ -1,191 +1,191 @@
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
|
@ -1,71 +1,71 @@
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = emberrender
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberRender.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberRender)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberRender.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberRender.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
TEMPLATE = app
|
||||
CONFIG += console
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
CONFIG -= qt
|
||||
|
||||
TARGET = emberrender
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/EmberRender.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/EmberRender)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
themes.files = $$ASSETS_DIR/dark.qss
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$SRC_COMMON_DIR/EmberCommonPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/EmberRender.cpp \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.cpp
|
||||
|
||||
include(deployment.pri)
|
||||
qtcAddDeployment()
|
||||
|
||||
HEADERS += \
|
||||
$$PRJ_SRC_DIR/EmberRender.h \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/EmberOptions.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$SRC_COMMON_DIR/SimpleGlob.h \
|
||||
$$SRC_COMMON_DIR/SimpleOpt.h
|
||||
|
||||
|
@ -1,191 +1,191 @@
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
# This file was generated by an application wizard of Qt Creator.
|
||||
# The code below handles deployment to Android and Maemo, aswell as copying
|
||||
# of the application data to shadow build directories on desktop.
|
||||
# It is recommended not to modify this file, since newer versions of Qt Creator
|
||||
# may offer an updated version of it.
|
||||
|
||||
defineTest(qtcAddDeployment) {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
greaterThan(QT_MAJOR_VERSION, 4) {
|
||||
itemsources = $${item}.files
|
||||
} else {
|
||||
itemsources = $${item}.sources
|
||||
}
|
||||
$$itemsources = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath= $$eval($${deploymentfolder}.target)
|
||||
export($$itemsources)
|
||||
export($$itempath)
|
||||
DEPLOYMENT += $$item
|
||||
}
|
||||
|
||||
MAINPROFILEPWD = $$PWD
|
||||
|
||||
android-no-sdk {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
target.path = /data/user/qt
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:android {
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = /assets/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
x86 {
|
||||
target.path = /libs/x86
|
||||
} else: armeabi-v7a {
|
||||
target.path = /libs/armeabi-v7a
|
||||
} else {
|
||||
target.path = /libs/armeabi
|
||||
}
|
||||
|
||||
export(target.path)
|
||||
INSTALLS += target
|
||||
} else:win32 {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, /, \\)
|
||||
sourcePathSegments = $$split(source, \\)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
|
||||
target = $$replace(target, /, \\)
|
||||
target ~= s,\\\\\\.?\\\\,\\,
|
||||
!isEqual(source,$$target) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
isEqual(QMAKE_DIR_SEP, \\) {
|
||||
copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
} else {
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
} else:ios {
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += mkdir -p \"$$target\"
|
||||
copyCommand += && cp -r \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = echo Copying application data... && $$copyCommand
|
||||
!isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
|
||||
QMAKE_POST_LINK += "$$copyCommand"
|
||||
export(QMAKE_POST_LINK)
|
||||
}
|
||||
} else:unix {
|
||||
maemo5 {
|
||||
desktopfile.files = $${TARGET}.desktop
|
||||
desktopfile.path = /usr/share/applications/hildon
|
||||
icon.files = $${TARGET}64.png
|
||||
icon.path = /usr/share/icons/hicolor/64x64/apps
|
||||
} else:!isEmpty(MEEGO_VERSION_MAJOR) {
|
||||
desktopfile.files = $${TARGET}_harmattan.desktop
|
||||
desktopfile.path = /usr/share/applications
|
||||
icon.files = $${TARGET}80.png
|
||||
icon.path = /usr/share/icons/hicolor/80x80/apps
|
||||
} else { # Assumed to be a Desktop Unix
|
||||
copyCommand =
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
|
||||
source = $$replace(source, \\\\, /)
|
||||
macx {
|
||||
target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
|
||||
} else {
|
||||
target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
|
||||
}
|
||||
target = $$replace(target, \\\\, /)
|
||||
sourcePathSegments = $$split(source, /)
|
||||
targetFullPath = $$target/$$last(sourcePathSegments)
|
||||
targetFullPath ~= s,/\\.?/,/,
|
||||
!isEqual(source,$$targetFullPath) {
|
||||
!isEmpty(copyCommand):copyCommand += &&
|
||||
copyCommand += $(MKDIR) \"$$target\"
|
||||
copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
|
||||
}
|
||||
}
|
||||
!isEmpty(copyCommand) {
|
||||
copyCommand = @echo Copying application data... && $$copyCommand
|
||||
copydeploymentfolders.commands = $$copyCommand
|
||||
first.depends = $(first) copydeploymentfolders
|
||||
export(first.depends)
|
||||
export(copydeploymentfolders.commands)
|
||||
QMAKE_EXTRA_TARGETS += first copydeploymentfolders
|
||||
}
|
||||
}
|
||||
!isEmpty(target.path) {
|
||||
installPrefix = $${target.path}
|
||||
} else {
|
||||
installPrefix = /opt/$${TARGET}
|
||||
}
|
||||
for(deploymentfolder, DEPLOYMENTFOLDERS) {
|
||||
item = item$${deploymentfolder}
|
||||
itemfiles = $${item}.files
|
||||
$$itemfiles = $$eval($${deploymentfolder}.source)
|
||||
itempath = $${item}.path
|
||||
$$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
|
||||
export($$itemfiles)
|
||||
export($$itempath)
|
||||
INSTALLS += $$item
|
||||
}
|
||||
|
||||
!isEmpty(desktopfile.path) {
|
||||
export(icon.files)
|
||||
export(icon.path)
|
||||
export(desktopfile.files)
|
||||
export(desktopfile.path)
|
||||
INSTALLS += icon desktopfile
|
||||
}
|
||||
|
||||
isEmpty(target.path) {
|
||||
target.path = $${installPrefix}/bin
|
||||
export(target.path)
|
||||
}
|
||||
INSTALLS += target
|
||||
}
|
||||
|
||||
export (ICON)
|
||||
export (INSTALLS)
|
||||
export (DEPLOYMENT)
|
||||
export (LIBS)
|
||||
export (QMAKE_EXTRA_TARGETS)
|
||||
}
|
||||
|
||||
|
@ -1,254 +1,256 @@
|
||||
TEMPLATE = app
|
||||
QT += core gui widgets opengl concurrent
|
||||
|
||||
TARGET = fractorium
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/Fractorium.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#message(QTDIR: $$(QTDIR))
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/Fractorium)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Qt will be installed on a system wide level on *nix. It should be the same for Windows, but copy it local just to be safe.
|
||||
win32 {
|
||||
CONFIG(release, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt5Core.dll $$(QTDIR)\bin\Qt5Gui.dll $$(QTDIR)\bin\Qt5Widgets.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
qtplatforms.files = $$(QTDIR)\plugins\platforms\qwindows.dll
|
||||
INSTALLS += qtplatforms
|
||||
|
||||
qimageformats.path = $$BIN_INSTALL_DIR\imageformats
|
||||
qimageformats.files = $$(QTDIR)\plugins\imageformats\qjpeg.dll
|
||||
INSTALLS += qimageformats
|
||||
}
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt5Cored.dll $$(QTDIR)\bin\Qt5Guid.dll $$(QTDIR)\bin\Qt5Widgetsd.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
qtplatforms.files = $$(QTDIR)\plugins\platforms\qwindowsd.dll
|
||||
INSTALLS += qtplatforms
|
||||
|
||||
qimageformats.path = $$BIN_INSTALL_DIR\imageformats
|
||||
qimageformats.files = $$(QTDIR)\plugins\imageformats\qjpeg.dll
|
||||
INSTALLS += qimageformats
|
||||
}
|
||||
}
|
||||
|
||||
#For some reason, a Qt project needs to be told to look at itself.
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR/PaletteEditor
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml \
|
||||
$$ASSETS_DIR/boxtail_pack_02.gradient \
|
||||
$$ASSETS_DIR/boxtail_pack_03_triangle.gradient \
|
||||
$$ASSETS_DIR/boxtail_pack_04_mineshack.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_01_variety_number_128.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_02_b_sides.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_03_old_and_new.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_04_hoard.gradient \
|
||||
$$ASSETS_DIR/fractaldesire_pack_01.gradient \
|
||||
$$ASSETS_DIR/rce_ordinary_pack_01_colornation.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_01.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_colder.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_dark.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_warmer.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_03.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_04.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_05.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_06.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_07.gradient \
|
||||
$$ASSETS_DIR/Amphibole_Supergroup.ugr \
|
||||
$$ASSETS_DIR/Apatite_Supergroup.ugr \
|
||||
$$ASSETS_DIR/Feldspar_Group.ugr \
|
||||
$$ASSETS_DIR/Mica_Group.ugr \
|
||||
$$ASSETS_DIR/Quartz_Varieties.ugr
|
||||
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
win32 {
|
||||
themes.files = $$ASSETS_DIR/dark_windows.qss
|
||||
}
|
||||
|
||||
macx {
|
||||
themes.files = $$ASSETS_DIR/dark_mac.qss
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
themes.files = $$ASSETS_DIR/dark_linux.qss
|
||||
}
|
||||
|
||||
themes.files += $$ASSETS_DIR/lightdark.qss
|
||||
themes.files += $$ASSETS_DIR/uranium.qss
|
||||
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/FractoriumPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/AboutDialog.cpp \
|
||||
$$PRJ_SRC_DIR/csshighlighter.cpp \
|
||||
$$PRJ_SRC_DIR/CurvesGraphicsView.cpp \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBox.cpp \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.cpp \
|
||||
$$PRJ_SRC_DIR/FinalRenderEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/Fractorium.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumInfo.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumLibrary.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumMenus.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumPalette.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumParams.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumPch.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumRender.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumSettings.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumToolbar.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXaos.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsAffine.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsColor.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXforms.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsSelect.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsVariations.cpp \
|
||||
$$PRJ_SRC_DIR/GLEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/GLWidget.cpp \
|
||||
$$PRJ_SRC_DIR/Main.cpp \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.cpp \
|
||||
$$PRJ_SRC_DIR/qcssparser.cpp \
|
||||
$$PRJ_SRC_DIR/qcssscanner.cpp \
|
||||
$$PRJ_SRC_DIR/QssDialog.cpp \
|
||||
$$PRJ_SRC_DIR/QssTextEdit.cpp \
|
||||
$$PRJ_SRC_DIR/SpinBox.cpp \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.cpp \
|
||||
$$PRJ_SRC_DIR/LibraryTreeWidget.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPanel.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPickerWidget.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorTriangle.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientColorsView.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/PaletteEditor.cpp
|
||||
|
||||
HEADERS += \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$PRJ_SRC_DIR/AboutDialog.h \
|
||||
$$PRJ_SRC_DIR/csshighlighter.h \
|
||||
$$PRJ_SRC_DIR/CurvesGraphicsView.h \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBox.h \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBoxTableItemDelegate.h \
|
||||
$$PRJ_SRC_DIR/EmberFile.h \
|
||||
$$PRJ_SRC_DIR/EmberTreeWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.h \
|
||||
$$PRJ_SRC_DIR/FinalRenderEmberController.h \
|
||||
$$PRJ_SRC_DIR/FractoriumCommon.h \
|
||||
$$PRJ_SRC_DIR/FractoriumEmberController.h \
|
||||
$$PRJ_SRC_DIR/Fractorium.h \
|
||||
$$PRJ_SRC_DIR/FractoriumPch.h \
|
||||
$$PRJ_SRC_DIR/FractoriumSettings.h \
|
||||
$$PRJ_SRC_DIR/GLEmberController.h \
|
||||
$$PRJ_SRC_DIR/GLWidget.h \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.h \
|
||||
$$PRJ_SRC_DIR/PaletteTableWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/qcssparser.h \
|
||||
$$PRJ_SRC_DIR/qcssscanner.h \
|
||||
$$PRJ_SRC_DIR/qfunctions.h \
|
||||
$$PRJ_SRC_DIR/QssDialog.h \
|
||||
$$PRJ_SRC_DIR/QssTextEdit.h \
|
||||
$$PRJ_SRC_DIR/resource.h \
|
||||
$$PRJ_SRC_DIR/SpinBox.h \
|
||||
$$PRJ_SRC_DIR/StealthComboBox.h \
|
||||
$$PRJ_SRC_DIR/TableWidget.h \
|
||||
$$PRJ_SRC_DIR/TwoButtonComboWidget.h \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.h \
|
||||
$$PRJ_SRC_DIR/VariationTreeWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/LibraryTreeWidget.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPanel.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPickerWidget.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorTriangle.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientArrow.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientColorsView.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/PaletteEditor.h
|
||||
|
||||
FORMS += \
|
||||
$$PRJ_SRC_DIR/AboutDialog.ui \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.ui \
|
||||
$$PRJ_SRC_DIR/Fractorium.ui \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.ui \
|
||||
$$PRJ_SRC_DIR/QssDialog.ui \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.ui \
|
||||
$$PRJ_SRC_DIR/PaletteEditor.ui
|
||||
|
||||
OTHER_FILES += \
|
||||
$$PRJ_SRC_DIR/Fractorium.aps \
|
||||
$$PRJ_SRC_DIR/Fractorium.rc
|
||||
|
||||
RESOURCES += \
|
||||
$$PRJ_SRC_DIR/Fractorium.qrc
|
||||
|
||||
bench.path = $$SHARE_INSTALL_DIR/bench
|
||||
bench.files += \
|
||||
$$ASSETS_DIR/Bench/EmberBench.ps1 \
|
||||
$$ASSETS_DIR/Bench/golubaja_rippingfrominside_complexcode.flame \
|
||||
$$ASSETS_DIR/Bench/mfeemster_basicmemory.flame \
|
||||
$$ASSETS_DIR/Bench/tatasz_springcrown_manysimplexforms.flame \
|
||||
$$ASSETS_DIR/Bench/tyrantwave_flippeddisc_normal.flame \
|
||||
$$ASSETS_DIR/Bench/zy0rg_six_bigcomplexcode.flame
|
||||
|
||||
#message(BENCH INSTALL SOURCE: $$bench.files)
|
||||
INSTALLS += bench
|
||||
|
||||
examples.path = $$SHARE_INSTALL_DIR/examples
|
||||
examples.files += \
|
||||
$$ASSETS_DIR/examples/b33rheart_examples.flame \
|
||||
$$ASSETS_DIR/examples/b33rheart_sierpinski.flame \
|
||||
$$ASSETS_DIR/examples/c-91_examples.flame \
|
||||
$$ASSETS_DIR/examples/pillemaster_hexagonal_tilings.flame \
|
||||
$$ASSETS_DIR/examples/plangkye_examples.flame \
|
||||
$$ASSETS_DIR/examples/tatasz_examples.flame \
|
||||
$$ASSETS_DIR/examples/tatasz_substitution.flame \
|
||||
$$ASSETS_DIR/examples/triptychaos_examples.flame \
|
||||
$$ASSETS_DIR/examples/tyrantwave_base_forms.flame
|
||||
|
||||
#message(EXAMPLES INSTALL SOURCE: $$examples.files)
|
||||
INSTALLS += examples
|
||||
|
||||
TEMPLATE = app
|
||||
QT += core gui widgets opengl openglwidgets concurrent
|
||||
|
||||
TARGET = fractorium
|
||||
|
||||
include(../defaults.pri)
|
||||
|
||||
#Point to visual studio resource file to embed file information and icon.
|
||||
win32 {
|
||||
RC = $$RCPATH/Fractorium.rc
|
||||
win32:RC_FILE = $$RC
|
||||
#message(RC_FILE: $$RC)
|
||||
}
|
||||
|
||||
#message(QTDIR: $$(QTDIR))
|
||||
|
||||
#Go up one folder because the paths defined in defaults were relative to it, which is up one folder.
|
||||
PRJ_SRC_DIR = $$absolute_path($$EMBER_ROOT/../Source/Fractorium)
|
||||
#message(PRJ_SRC_DIR: $$PRJ_SRC_DIR)
|
||||
|
||||
#Qt will be installed on a system wide level on *nix. It should be the same for Windows, but copy it local just to be safe.
|
||||
win32 {
|
||||
CONFIG(release, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt6Core.dll $$(QTDIR)\bin\Qt6Gui.dll $$(QTDIR)\bin\Qt6OpenGL.dll $$(QTDIR)\bin\Qt6OpenGLWidgets.dll $$(QTDIR)\bin\Qt6Widgets.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
qtplatforms.files = $$(QTDIR)\plugins\platforms\qwindows.dll
|
||||
INSTALLS += qtplatforms
|
||||
|
||||
qimageformats.path = $$BIN_INSTALL_DIR\imageformats
|
||||
qimageformats.files = $$(QTDIR)\plugins\imageformats\qjpeg.dll
|
||||
INSTALLS += qimageformats
|
||||
}
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
qtfiles.path = $$BIN_INSTALL_DIR
|
||||
qtfiles.files = $$(QTDIR)\bin\Qt6Cored.dll $$(QTDIR)\bin\Qt6Guid.dll $$(QTDIR)\bin\Qt6OpenGLd.dll $$(QTDIR)\bin\Qt6OpenGLWidgetsd.dll $$(QTDIR)\bin\Qt6Widgetsd.dll
|
||||
INSTALLS += qtfiles
|
||||
|
||||
qtplatforms.path = $$BIN_INSTALL_DIR\platforms
|
||||
qtplatforms.files = $$(QTDIR)\plugins\platforms\qwindowsd.dll
|
||||
INSTALLS += qtplatforms
|
||||
|
||||
qimageformats.path = $$BIN_INSTALL_DIR\imageformats
|
||||
qimageformats.files = $$(QTDIR)\plugins\imageformats\qjpeg.dll
|
||||
INSTALLS += qimageformats
|
||||
}
|
||||
}
|
||||
|
||||
#For some reason, a Qt project needs to be told to look at itself.
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR
|
||||
INCLUDEPATH += $$PRJ_SRC_DIR/PaletteEditor
|
||||
INCLUDEPATH += $$(QTDIR)\include\QtWidget
|
||||
|
||||
# Uncomment this if you only want to build a binary instead of an app bundle.
|
||||
#macx:CONFIG -= app_bundle
|
||||
|
||||
target.path = $$BIN_INSTALL_DIR
|
||||
#message(TARGET INSTALL: $$target.path)
|
||||
INSTALLS += target
|
||||
|
||||
palettes.path = $$SHARE_INSTALL_DIR
|
||||
palettes.files = $$ASSETS_DIR/flam3-palettes.xml \
|
||||
$$ASSETS_DIR/boxtail_pack_02.gradient \
|
||||
$$ASSETS_DIR/boxtail_pack_03_triangle.gradient \
|
||||
$$ASSETS_DIR/boxtail_pack_04_mineshack.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_01_variety_number_128.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_02_b_sides.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_03_old_and_new.gradient \
|
||||
$$ASSETS_DIR/fardareismai_pack_04_hoard.gradient \
|
||||
$$ASSETS_DIR/fractaldesire_pack_01.gradient \
|
||||
$$ASSETS_DIR/rce_ordinary_pack_01_colornation.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_01.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_colder.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_dark.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_02_warmer.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_03.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_04.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_05.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_06.gradient \
|
||||
$$ASSETS_DIR/tatasz_pack_07.gradient \
|
||||
$$ASSETS_DIR/Amphibole_Supergroup.ugr \
|
||||
$$ASSETS_DIR/Apatite_Supergroup.ugr \
|
||||
$$ASSETS_DIR/Feldspar_Group.ugr \
|
||||
$$ASSETS_DIR/Mica_Group.ugr \
|
||||
$$ASSETS_DIR/Quartz_Varieties.ugr
|
||||
|
||||
#message(PALETTE INSTALL SOURCE: $$palettes.files)
|
||||
INSTALLS += palettes
|
||||
|
||||
themes.path = $$SHARE_INSTALL_DIR
|
||||
win32 {
|
||||
themes.files = $$ASSETS_DIR/dark_windows.qss
|
||||
}
|
||||
|
||||
macx {
|
||||
themes.files = $$ASSETS_DIR/dark_mac.qss
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
themes.files = $$ASSETS_DIR/dark_linux.qss
|
||||
}
|
||||
|
||||
themes.files += $$ASSETS_DIR/lightdark.qss
|
||||
themes.files += $$ASSETS_DIR/uranium.qss
|
||||
|
||||
#message(THEMES INSTALL SOURCE: $$themes.files)
|
||||
INSTALLS += themes
|
||||
|
||||
!win32 {
|
||||
icon.path = $$SHARE_INSTALL_DIR
|
||||
icon.files = $$absolute_path($$PRJ_SRC_DIR/Icons/Fractorium.png)
|
||||
#message(ICON INSTALL SOURCE: $$icon.files)
|
||||
INSTALLS += icon
|
||||
|
||||
launcher.path = $$LAUNCHER_INSTALL_DIR
|
||||
launcher.files = $$ASSETS_DIR/Fractorium.desktop
|
||||
#message(LAUNCHER INSTALL SOURCE: $$launcher.files)
|
||||
INSTALLS += launcher
|
||||
}
|
||||
|
||||
macx:ICON = $$ASSETS_DIR/Fractorium.icns
|
||||
!macx:PRECOMPILED_HEADER = $$PRJ_SRC_DIR/FractoriumPch.h
|
||||
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lember
|
||||
LIBS += -L$$absolute_path($$DESTDIR) -lembercl
|
||||
|
||||
SOURCES += \
|
||||
$$PRJ_SRC_DIR/AboutDialog.cpp \
|
||||
$$PRJ_SRC_DIR/csshighlighter.cpp \
|
||||
$$PRJ_SRC_DIR/CurvesGraphicsView.cpp \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBox.cpp \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.cpp \
|
||||
$$PRJ_SRC_DIR/FinalRenderEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/Fractorium.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumInfo.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumLibrary.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumMenus.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumPalette.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumParams.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumPch.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumRender.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumSettings.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumToolbar.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXaos.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsAffine.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsColor.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXforms.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsSelect.cpp \
|
||||
$$PRJ_SRC_DIR/FractoriumXformsVariations.cpp \
|
||||
$$PRJ_SRC_DIR/GLEmberController.cpp \
|
||||
$$PRJ_SRC_DIR/GLWidget.cpp \
|
||||
$$PRJ_SRC_DIR/Main.cpp \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.cpp \
|
||||
$$PRJ_SRC_DIR/qcssparser.cpp \
|
||||
$$PRJ_SRC_DIR/qcssscanner.cpp \
|
||||
$$PRJ_SRC_DIR/QssDialog.cpp \
|
||||
$$PRJ_SRC_DIR/QssTextEdit.cpp \
|
||||
$$PRJ_SRC_DIR/SpinBox.cpp \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.cpp \
|
||||
$$PRJ_SRC_DIR/LibraryTreeWidget.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPanel.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPickerWidget.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorTriangle.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientColorsView.cpp \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/PaletteEditor.cpp
|
||||
|
||||
HEADERS += \
|
||||
$$SRC_COMMON_DIR/EmberCommon.h \
|
||||
$$SRC_COMMON_DIR/EmberCommonPch.h \
|
||||
$$SRC_COMMON_DIR/JpegUtils.h \
|
||||
$$PRJ_SRC_DIR/AboutDialog.h \
|
||||
$$PRJ_SRC_DIR/csshighlighter.h \
|
||||
$$PRJ_SRC_DIR/CurvesGraphicsView.h \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBox.h \
|
||||
$$PRJ_SRC_DIR/DoubleSpinBoxTableItemDelegate.h \
|
||||
$$PRJ_SRC_DIR/EmberFile.h \
|
||||
$$PRJ_SRC_DIR/EmberTreeWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.h \
|
||||
$$PRJ_SRC_DIR/FinalRenderEmberController.h \
|
||||
$$PRJ_SRC_DIR/FractoriumCommon.h \
|
||||
$$PRJ_SRC_DIR/FractoriumEmberController.h \
|
||||
$$PRJ_SRC_DIR/Fractorium.h \
|
||||
$$PRJ_SRC_DIR/FractoriumPch.h \
|
||||
$$PRJ_SRC_DIR/FractoriumSettings.h \
|
||||
$$PRJ_SRC_DIR/GLEmberController.h \
|
||||
$$PRJ_SRC_DIR/GLWidget.h \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.h \
|
||||
$$PRJ_SRC_DIR/PaletteTableWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/qcssparser.h \
|
||||
$$PRJ_SRC_DIR/qcssscanner.h \
|
||||
$$PRJ_SRC_DIR/qfunctions.h \
|
||||
$$PRJ_SRC_DIR/QssDialog.h \
|
||||
$$PRJ_SRC_DIR/QssTextEdit.h \
|
||||
$$PRJ_SRC_DIR/resource.h \
|
||||
$$PRJ_SRC_DIR/SpinBox.h \
|
||||
$$PRJ_SRC_DIR/StealthComboBox.h \
|
||||
$$PRJ_SRC_DIR/TableWidget.h \
|
||||
$$PRJ_SRC_DIR/TwoButtonComboWidget.h \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.h \
|
||||
$$PRJ_SRC_DIR/VariationTreeWidgetItem.h \
|
||||
$$PRJ_SRC_DIR/LibraryTreeWidget.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPanel.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorPickerWidget.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/ColorTriangle.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientArrow.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/GradientColorsView.h \
|
||||
$$PRJ_SRC_DIR/PaletteEditor/PaletteEditor.h
|
||||
|
||||
FORMS += \
|
||||
$$PRJ_SRC_DIR/AboutDialog.ui \
|
||||
$$PRJ_SRC_DIR/FinalRenderDialog.ui \
|
||||
$$PRJ_SRC_DIR/Fractorium.ui \
|
||||
$$PRJ_SRC_DIR/OptionsDialog.ui \
|
||||
$$PRJ_SRC_DIR/QssDialog.ui \
|
||||
$$PRJ_SRC_DIR/VariationsDialog.ui \
|
||||
$$PRJ_SRC_DIR/PaletteEditor.ui
|
||||
|
||||
OTHER_FILES += \
|
||||
$$PRJ_SRC_DIR/Fractorium.aps \
|
||||
$$PRJ_SRC_DIR/Fractorium.rc
|
||||
|
||||
RESOURCES += \
|
||||
$$PRJ_SRC_DIR/Fractorium.qrc
|
||||
|
||||
bench.path = $$SHARE_INSTALL_DIR/bench
|
||||
bench.files += \
|
||||
$$ASSETS_DIR/Bench/EmberBench.ps1 \
|
||||
$$ASSETS_DIR/Bench/golubaja_rippingfrominside_complexcode.flame \
|
||||
$$ASSETS_DIR/Bench/mfeemster_basicmemory.flame \
|
||||
$$ASSETS_DIR/Bench/tatasz_springcrown_manysimplexforms.flame \
|
||||
$$ASSETS_DIR/Bench/tyrantwave_flippeddisc_normal.flame \
|
||||
$$ASSETS_DIR/Bench/zy0rg_six_bigcomplexcode.flame
|
||||
|
||||
#message(BENCH INSTALL SOURCE: $$bench.files)
|
||||
INSTALLS += bench
|
||||
|
||||
examples.path = $$SHARE_INSTALL_DIR/examples
|
||||
examples.files += \
|
||||
$$ASSETS_DIR/examples/b33rheart_examples.flame \
|
||||
$$ASSETS_DIR/examples/b33rheart_sierpinski.flame \
|
||||
$$ASSETS_DIR/examples/c-91_examples.flame \
|
||||
$$ASSETS_DIR/examples/pillemaster_hexagonal_tilings.flame \
|
||||
$$ASSETS_DIR/examples/plangkye_examples.flame \
|
||||
$$ASSETS_DIR/examples/tatasz_examples.flame \
|
||||
$$ASSETS_DIR/examples/tatasz_substitution.flame \
|
||||
$$ASSETS_DIR/examples/triptychaos_examples.flame \
|
||||
$$ASSETS_DIR/examples/tyrantwave_base_forms.flame
|
||||
|
||||
#message(EXAMPLES INSTALL SOURCE: $$examples.files)
|
||||
INSTALLS += examples
|
||||
|
||||
|
@ -1,300 +1,294 @@
|
||||
VERSION = 22.21.4.2
|
||||
win32:CONFIG += skip_target_version_ext
|
||||
CONFIG += c++14
|
||||
|
||||
#message(PWD: $$absolute_path($$PWD))
|
||||
|
||||
#1) Declare the root of all files in this project, everything else will be
|
||||
# defined in terms of this.
|
||||
EMBER_ROOT = ./../..
|
||||
|
||||
# When compiling from project root
|
||||
autobuild {
|
||||
# EMBER_ROOT = $$(PWD)/../..
|
||||
}
|
||||
|
||||
#2) Declare where dependency folders are.
|
||||
# Point to local copy of OpenCL includes to ensure we have the right ones.
|
||||
LOCAL_INCLUDE_DIR = $$absolute_path($$EMBER_ROOT/Builds/include/vendor)
|
||||
# Parent folders for third party dependencies and their compiled outputs.
|
||||
win32: {
|
||||
EXTERNAL_DIR = $$absolute_path($$EMBER_ROOT/..)
|
||||
EXTERNAL_LIB = $$absolute_path($$EMBER_ROOT/Deps)
|
||||
}
|
||||
|
||||
#3) Declare where our source, data and resource files are.
|
||||
SRC_DIR = $$EMBER_ROOT/Source
|
||||
SRC_COMMON_DIR = $$absolute_path($$EMBER_ROOT/Source/EmberCommon)
|
||||
ASSETS_DIR = $$absolute_path($$EMBER_ROOT/Data)
|
||||
QTCREATOR_DIR = $$absolute_path($$EMBER_ROOT/Builds/QtCreator)
|
||||
win32:RCPATH=$$absolute_path($$QTCREATOR_DIR/../MSVC/VS2019)
|
||||
|
||||
#4) Add up all include paths.
|
||||
INCLUDEPATH += $$LOCAL_INCLUDE_DIR
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/Ember)
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/EmberCL)
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/EmberCommon)
|
||||
|
||||
win32 {
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/glm
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libjpeg
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libpng
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libxml2/include
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/zlib
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/openexr/output/include/Imath
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/openexr/output/include/OpenEXR
|
||||
}
|
||||
|
||||
!win32 {
|
||||
#If your global includes are stored elsewhere, add them here.
|
||||
#INCLUDEPATH += /usr/include
|
||||
INCLUDEPATH += /usr/local/include
|
||||
INCLUDEPATH += /usr/include/GL
|
||||
exists( /usr/local/include/GL ) {
|
||||
INCLUDEPATH += /usr/local/include/GL
|
||||
}
|
||||
INCLUDEPATH += /usr/include/glm
|
||||
exists( /usr/local/include/GL ) {
|
||||
INCLUDEPATH += /usr/include/Imath
|
||||
}
|
||||
exists( /usr/include/OpenEXR ) {
|
||||
INCLUDEPATH += /usr/include/OpenEXR
|
||||
}
|
||||
exists( /usr/include/Imath ) {
|
||||
INCLUDEPATH += /usr/include/Imath
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
INCLUDEPATH += /usr/include/libxml2
|
||||
}
|
||||
else {
|
||||
INCLUDEPATH += /usr/local/opt/libxml2/include/libxml2
|
||||
}
|
||||
|
||||
#libjpeg and libpng aren't in separate folders, so nothing to add here for them.
|
||||
}
|
||||
|
||||
#5) Add up all library paths. Ember and EmberCL don't need libjpeb, libpng or zlib and
|
||||
# Ember doesn't need OpenCL. But just place them all here in the common file for ease of maintenance.
|
||||
# Unneeded libs will just be ignored.
|
||||
win32 {
|
||||
LIBS = ""
|
||||
LIBS += OpenGL32.lib
|
||||
LIBS += WS2_32.lib
|
||||
_AMDAPPSDK = $$(AMDAPPSDKROOT)
|
||||
|
||||
isEmpty(_AMDAPPSDK) {
|
||||
LIBS += $$(CUDA_PATH)/lib/x64/OpenCL.lib
|
||||
}
|
||||
else {
|
||||
LIBS += $$(AMDAPPSDKROOT)/lib/x86_64/OpenCL.lib
|
||||
}
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libjpeg.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libpng.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libxml2.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/zlib.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/Iex-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/IlmThread-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/Imath-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/OpenEXR-3_1.lib
|
||||
}
|
||||
|
||||
!win32 {
|
||||
LIBS += -ljpeg
|
||||
LIBS += -lpng
|
||||
LIBS += -lpthread
|
||||
LIBS += -lOpenEXR
|
||||
|
||||
unix:!macx {
|
||||
LIBS += -lxml2
|
||||
}
|
||||
else {
|
||||
LIBS += -L/usr/local/opt/libxml2/lib -lxml2
|
||||
}
|
||||
}
|
||||
|
||||
macx {
|
||||
LIBS += -framework OpenGL
|
||||
LIBS += -framework OpenCL
|
||||
LIBS += -L/usr/local/lib# homebrew installs into /usr/local
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
LIBS += -lGL
|
||||
LIBS += -lOpenCL
|
||||
}
|
||||
|
||||
#6) Declare intermediate paths.
|
||||
|
||||
|
||||
|
||||
#7) Declare output paths for each configuration.
|
||||
CONFIG(release, debug|release) {
|
||||
CONFIG += warn_off
|
||||
DESTDIR = $$absolute_path($$EMBER_ROOT/Bin/release)
|
||||
}
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
DESTDIR = $$absolute_path($$EMBER_ROOT/Bin/debug)
|
||||
}
|
||||
|
||||
#8) Set compiler options.
|
||||
QMAKE_CXXFLAGS_RELEASE += -O2
|
||||
QMAKE_CXXFLAGS_RELEASE += -DNDEBUG
|
||||
QMAKE_CXXFLAGS += -D_M_X64
|
||||
QMAKE_CXXFLAGS += -D_CONSOLE
|
||||
QMAKE_CXXFLAGS += -D_USRDLL
|
||||
|
||||
win32 {
|
||||
QMAKE_CXXFLAGS += -bigobj #Allow for very large object files.
|
||||
QMAKE_CXXFLAGS += /MP #Enable multi-processor compilation.
|
||||
QMAKE_CXXFLAGS += /Zc:wchar_t #Treat wchar_t as builtin type (we don't use wchar_t anyway).
|
||||
QMAKE_CXXFLAGS += /Zi #Debug information format: program database.
|
||||
QMAKE_CXXFLAGS += /Gm- #Disable minimal rebuild, needed to allow /MP.
|
||||
QMAKE_CXXFLAGS += /fp:precise #Precise floating point model.
|
||||
QMAKE_CXXFLAGS += /fp:except- #Disable floating point exceptions.
|
||||
QMAKE_CXXFLAGS += /D "WIN32"
|
||||
QMAKE_CXXFLAGS += /D "_WINDOWS"
|
||||
QMAKE_CXXFLAGS += /D "_USRDLL"
|
||||
QMAKE_CXXFLAGS += /D "_WINDLL" #Build as a DLL.
|
||||
QMAKE_CXXFLAGS += /D "_MBCS" #Use multi-byte character set.
|
||||
QMAKE_CXXFLAGS += /errorReport:prompt #Internal compiler error reporting, prompt immediately.
|
||||
QMAKE_CXXFLAGS += /GF #Enable string pooling.
|
||||
QMAKE_CXXFLAGS += /WX- #Don't treat warnings as errors.
|
||||
QMAKE_CXXFLAGS += /Zc:forScope #Force conformance in for loop scope.
|
||||
QMAKE_CXXFLAGS += /Gd #Calling convention: __cdecl.
|
||||
QMAKE_CXXFLAGS += /EHsc #Enable C++ exceptions.
|
||||
QMAKE_CXXFLAGS += /nologo #Suppress compiler startup banner.
|
||||
|
||||
QMAKE_CXXFLAGS_RELEASE += /GS- #Disable security check.
|
||||
QMAKE_CXXFLAGS_RELEASE += /MD #Link to multi-threaded DLL.
|
||||
QMAKE_CXXFLAGS_RELEASE += /Gy #Enable function level linking.
|
||||
QMAKE_CXXFLAGS_RELEASE += /O2 #Maximize speed.
|
||||
QMAKE_CXXFLAGS_RELEASE += /Ot #Favor fast code.
|
||||
QMAKE_CXXFLAGS_RELEASE += /D "NDEBUG" #Release mode.
|
||||
|
||||
QMAKE_CXXFLAGS_DEBUG += /W3 #Error warning level to 3.
|
||||
QMAKE_CXXFLAGS_DEBUG += /GS #Enable security check.
|
||||
QMAKE_CXXFLAGS_DEBUG += /MDd #Link to multi-threaded debug DLL.
|
||||
QMAKE_CXXFLAGS_DEBUG += /Od #Optimization disabled.
|
||||
QMAKE_CXXFLAGS_DEBUG += /D "_DEBUG" #Debug mode.
|
||||
QMAKE_CXXFLAGS_DEBUG += /RTC1 #Basic runtime checks: stack frames and uninitialized variables.
|
||||
QMAKE_CXXFLAGS_DEBUG += /Ob2 #Inline function expansion: any suitable.
|
||||
}
|
||||
|
||||
!win32 {
|
||||
native {
|
||||
QMAKE_CXXFLAGS += -march=native
|
||||
} else {
|
||||
QMAKE_CXXFLAGS += -march=k8
|
||||
}
|
||||
|
||||
CMAKE_CXXFLAGS += -DCL_USE_DEPRECATED_OPENCL_1_1_APIS # Not sure if this is needed. We remove it if all systems we build on support 1.2.
|
||||
QMAKE_CXXFLAGS_RELEASE += -fomit-frame-pointer
|
||||
QMAKE_CXXFLAGS += -fPIC
|
||||
QMAKE_CXXFLAGS += -fpermissive
|
||||
QMAKE_CXXFLAGS += -pedantic
|
||||
QMAKE_CXXFLAGS += -std=c++14
|
||||
QMAKE_CXXFLAGS += -Wnon-virtual-dtor
|
||||
QMAKE_CXXFLAGS += -Wshadow
|
||||
QMAKE_CXXFLAGS += -Winit-self
|
||||
QMAKE_CXXFLAGS += -Wredundant-decls
|
||||
QMAKE_CXXFLAGS += -Wcast-align
|
||||
QMAKE_CXXFLAGS += -Winline
|
||||
QMAKE_CXXFLAGS += -Wunreachable-code
|
||||
QMAKE_CXXFLAGS += -Wswitch-enum
|
||||
QMAKE_CXXFLAGS += -Wswitch-default
|
||||
QMAKE_CXXFLAGS += -Wmain
|
||||
QMAKE_CXXFLAGS += -Wfatal-errors
|
||||
QMAKE_CXXFLAGS += -Wall -fpermissive
|
||||
|
||||
# CL has lots of old-style-cast which clogs up warning logs
|
||||
#QMAKE_CXXFLAGS += -Wold-style-cast
|
||||
|
||||
QMAKE_CXXFLAGS += -Wno-unused-parameter
|
||||
QMAKE_CXXFLAGS += -Wno-unused-function
|
||||
QMAKE_CXXFLAGS += -Wold-style-cast
|
||||
|
||||
QMAKE_CXXFLAGS_DEBUG += -Wmissing-include-dirs
|
||||
QMAKE_CXXFLAGS_DEBUG += -Wzero-as-null-pointer-constant
|
||||
# NOTE: last path will be the first to search. gcc -I and -L appends to the
|
||||
# beginning of the path list.
|
||||
|
||||
# NOTE: qmake will resolve symlinks. If /usr/local/include/CL is a symlink to
|
||||
# /usr/include/nvidia-352/CL, qmake will generate Makefiles using the latter.
|
||||
}
|
||||
|
||||
macx {
|
||||
QMAKE_MAC_SDK = macosx10.14
|
||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.10
|
||||
QMAKE_CXXFLAGS += -mmacosx-version-min=10.10 -arch x86_64
|
||||
QMAKE_CXXFLAGS += -stdlib=libc++
|
||||
}
|
||||
|
||||
unix {
|
||||
CONFIG += precompile_header
|
||||
QMAKE_LFLAGS_RELEASE += -s
|
||||
}
|
||||
|
||||
#9) Declare !win32 install dirs.
|
||||
win32 {#For Windows, the install folder is just the output folder.
|
||||
LIB_INSTALL_DIR = $$DESTDIR
|
||||
BIN_INSTALL_DIR = $$DESTDIR
|
||||
SHARE_INSTALL_DIR = $$DESTDIR
|
||||
LAUNCHER_INSTALL_DIR = $$DESTDIR
|
||||
}
|
||||
|
||||
!win32 {
|
||||
LIB_INSTALL_DIR = /usr/lib
|
||||
BIN_INSTALL_DIR = /usr/bin
|
||||
SHARE_INSTALL_DIR = /usr/share/fractorium
|
||||
LAUNCHER_INSTALL_DIR = /usr/share/applications
|
||||
}
|
||||
|
||||
#10) Add third party libraries to install dir.
|
||||
win32 {
|
||||
libxml.path = $$BIN_INSTALL_DIR
|
||||
libxml.files = $$absolute_path($$EMBER_ROOT/Deps/libxml2.dll)
|
||||
INSTALLS += libxml
|
||||
|
||||
iex.path = $$BIN_INSTALL_DIR
|
||||
iex.files = $$absolute_path($$EMBER_ROOT/Deps/Iex-3_1.dll)
|
||||
INSTALLS += iex
|
||||
|
||||
imath.path = $$BIN_INSTALL_DIR
|
||||
imath.files = $$absolute_path($$EMBER_ROOT/Deps/Imath-3_1.dll)
|
||||
INSTALLS += imath
|
||||
|
||||
ilmthread.path = $$BIN_INSTALL_DIR
|
||||
ilmthread.files = $$absolute_path($$EMBER_ROOT/Deps/IlmThread-3_1.dll)
|
||||
INSTALLS += ilmthread
|
||||
|
||||
openexr.path = $$BIN_INSTALL_DIR
|
||||
openexr.files = $$absolute_path($$EMBER_ROOT/Deps/OpenEXR-3_1.dll)
|
||||
INSTALLS += openexr
|
||||
}
|
||||
|
||||
#11) Print values of relevant variables for debugging.
|
||||
#message(CONFIG: $(CONFIG))
|
||||
#message(EMBER_ROOT: $$absolute_path($$EMBER_ROOT))
|
||||
#message(EXTERNAL_DIR: $$absolute_path($$EXTERNAL_DIR))
|
||||
#message(EXTERNAL_LIB: $$absolute_path($$EXTERNAL_LIB))
|
||||
#message(SRC_DIR: $$absolute_path($$SRC_DIR))
|
||||
#message(SRC_COMMON_DIR: $$SRC_COMMON_DIR)
|
||||
#message(ASSETS_DIR: $$absolute_path($$ASSETS_DIR))
|
||||
#message(LOCAL_INCLUDE_DIR: $$absolute_path($$LOCAL_INCLUDE_DIR))
|
||||
#message(QTCREATOR_DIR: $$absolute_path($$QTCREATOR_DIR))
|
||||
#message(LIBS: $$absolute_path($$LIBS))
|
||||
#message(DESTDIR: $$absolute_path($$DESTDIR))
|
||||
#message(DEPENDPATH: $$absolute_path($$DEPENDPATH))
|
||||
#message(AMDAPPSDKROOT: $$(AMDAPPSDKROOT))
|
||||
#message(CUDA_PATH: $$(CUDA_PATH))
|
||||
|
||||
win32 {
|
||||
#message(RCPATH: $$RCPATH)
|
||||
}
|
||||
|
||||
#message(LIB_INSTALL_DIR: $$absolute_path($$LIB_INSTALL_DIR))
|
||||
#message(BIN_INSTALL_DIR: $$absolute_path($$BIN_INSTALL_DIR))
|
||||
#message(SHARE_INSTALL_DIR: $$absolute_path($$SHARE_INSTALL_DIR))
|
||||
#message(LAUNCHER_INSTALL_DIR: $$absolute_path($$LAUNCHER_INSTALL_DIR))
|
||||
VERSION = 22.21.4.2
|
||||
win32:CONFIG += skip_target_version_ext
|
||||
CONFIG += c++20
|
||||
|
||||
#message(PWD: $$absolute_path($$PWD))
|
||||
|
||||
#1) Declare the root of all files in this project, everything else will be
|
||||
# defined in terms of this.
|
||||
EMBER_ROOT = ./../..
|
||||
|
||||
# When compiling from project root
|
||||
autobuild {
|
||||
# EMBER_ROOT = $$(PWD)/../..
|
||||
}
|
||||
|
||||
#2) Declare where dependency folders are.
|
||||
# Parent folders for third party dependencies and their compiled outputs.
|
||||
win32: {
|
||||
EXTERNAL_DIR = $$absolute_path($$EMBER_ROOT/..)
|
||||
EXTERNAL_LIB = $$absolute_path($$EMBER_ROOT/Deps)
|
||||
}
|
||||
|
||||
#3) Declare where our source, data and resource files are.
|
||||
SRC_DIR = $$EMBER_ROOT/Source
|
||||
SRC_COMMON_DIR = $$absolute_path($$EMBER_ROOT/Source/EmberCommon)
|
||||
ASSETS_DIR = $$absolute_path($$EMBER_ROOT/Data)
|
||||
QTCREATOR_DIR = $$absolute_path($$EMBER_ROOT/Builds/QtCreator)
|
||||
win32:RCPATH=$$absolute_path($$QTCREATOR_DIR/../MSVC/Solution)
|
||||
|
||||
#4) Add up all include paths.
|
||||
INCLUDEPATH += $$LOCAL_INCLUDE_DIR
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/Ember)
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/EmberCL)
|
||||
INCLUDEPATH += $$absolute_path($$SRC_DIR/EmberCommon)
|
||||
|
||||
win32 {
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/glm
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libjpeg
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libpng
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/libxml2/include
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/zlib
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/openexr/output/include/Imath
|
||||
INCLUDEPATH += $$EXTERNAL_DIR/openexr/output/include/OpenEXR
|
||||
}
|
||||
|
||||
!win32 {
|
||||
#If your global includes are stored elsewhere, add them here.
|
||||
#INCLUDEPATH += /usr/include
|
||||
INCLUDEPATH += /usr/local/include
|
||||
INCLUDEPATH += /usr/include/GL
|
||||
exists( /usr/local/include/GL ) {
|
||||
INCLUDEPATH += /usr/local/include/GL
|
||||
}
|
||||
INCLUDEPATH += /usr/include/glm
|
||||
exists( /usr/local/include/GL ) {
|
||||
INCLUDEPATH += /usr/include/Imath
|
||||
}
|
||||
exists( /usr/include/OpenEXR ) {
|
||||
INCLUDEPATH += /usr/include/OpenEXR
|
||||
}
|
||||
exists( /usr/include/Imath ) {
|
||||
INCLUDEPATH += /usr/include/Imath
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
INCLUDEPATH += /usr/include/libxml2
|
||||
}
|
||||
else {
|
||||
INCLUDEPATH += /usr/local/opt/libxml2/include/libxml2
|
||||
}
|
||||
|
||||
#libjpeg and libpng aren't in separate folders, so nothing to add here for them.
|
||||
}
|
||||
|
||||
#5) Add up all library paths. Ember and EmberCL don't need libjpeb, libpng or zlib and
|
||||
# Ember doesn't need OpenCL. But just place them all here in the common file for ease of maintenance.
|
||||
# Unneeded libs will just be ignored.
|
||||
win32 {
|
||||
LIBS = ""
|
||||
LIBS += OpenGL32.lib
|
||||
LIBS += WS2_32.lib
|
||||
LIBS += $$(OCL_ROOT)/lib/x86_64/OpenCL.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libjpeg.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libpng.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/libxml2.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/zlib.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/Iex-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/IlmThread-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/Imath-3_1.lib
|
||||
LIBS += $$absolute_path($$EXTERNAL_LIB)/OpenEXR-3_1.lib
|
||||
}
|
||||
|
||||
!win32 {
|
||||
LIBS += -ljpeg
|
||||
LIBS += -lpng
|
||||
LIBS += -lpthread
|
||||
LIBS += -lOpenEXR
|
||||
|
||||
unix:!macx {
|
||||
LIBS += -lxml2
|
||||
}
|
||||
else {
|
||||
LIBS += -L/usr/local/opt/libxml2/lib -lxml2
|
||||
}
|
||||
}
|
||||
|
||||
macx {
|
||||
LIBS += -framework OpenGL
|
||||
LIBS += -framework OpenCL
|
||||
LIBS += -L/usr/local/lib# homebrew installs into /usr/local
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
LIBS += -lGL
|
||||
LIBS += -lOpenCL
|
||||
}
|
||||
|
||||
#6) Declare intermediate paths.
|
||||
|
||||
|
||||
|
||||
#7) Declare output paths for each configuration.
|
||||
CONFIG(release, debug|release) {
|
||||
CONFIG += warn_off
|
||||
DESTDIR = $$absolute_path($$EMBER_ROOT/Bin/release)
|
||||
}
|
||||
|
||||
CONFIG(debug, debug|release) {
|
||||
DESTDIR = $$absolute_path($$EMBER_ROOT/Bin/debug)
|
||||
}
|
||||
|
||||
#8) Set compiler options.
|
||||
QMAKE_CXXFLAGS_RELEASE += -O2
|
||||
QMAKE_CXXFLAGS_RELEASE += -DNDEBUG
|
||||
QMAKE_CXXFLAGS += -D_M_X64
|
||||
QMAKE_CXXFLAGS += -D_CONSOLE
|
||||
QMAKE_CXXFLAGS += -D_USRDLL
|
||||
QMAKE_CXXFLAGS -= -D_UNICODE
|
||||
QMAKE_CXXFLAGS -= -DUNICODE
|
||||
DEFINES -= _UNICODE
|
||||
DEFINES -= UNICODE
|
||||
|
||||
win32 {
|
||||
QMAKE_CXXFLAGS += -bigobj #Allow for very large object files.
|
||||
QMAKE_CXXFLAGS += /MP #Enable multi-processor compilation.
|
||||
QMAKE_CXXFLAGS += /Zc:wchar_t #Treat wchar_t as builtin type (we don't use wchar_t anyway).
|
||||
QMAKE_CXXFLAGS += /Zi #Debug information format: program database.
|
||||
QMAKE_CXXFLAGS += /Gm- #Disable minimal rebuild, needed to allow /MP.
|
||||
QMAKE_CXXFLAGS += /fp:precise #Precise floating point model.
|
||||
QMAKE_CXXFLAGS += /fp:except- #Disable floating point exceptions.
|
||||
QMAKE_CXXFLAGS += /D "WIN32"
|
||||
QMAKE_CXXFLAGS += /D "_WINDOWS"
|
||||
QMAKE_CXXFLAGS += /D "_USRDLL"
|
||||
QMAKE_CXXFLAGS += /D "_WINDLL" #Build as a DLL.
|
||||
QMAKE_CXXFLAGS += /D "_MBCS" #Use multi-byte character set.
|
||||
QMAKE_CXXFLAGS += /errorReport:prompt #Internal compiler error reporting, prompt immediately.
|
||||
QMAKE_CXXFLAGS += /GF #Enable string pooling.
|
||||
QMAKE_CXXFLAGS += /WX- #Don't treat warnings as errors.
|
||||
QMAKE_CXXFLAGS += /Zc:forScope #Force conformance in for loop scope.
|
||||
QMAKE_CXXFLAGS += /Gd #Calling convention: __cdecl.
|
||||
QMAKE_CXXFLAGS += /EHsc #Enable C++ exceptions.
|
||||
QMAKE_CXXFLAGS += /nologo #Suppress compiler startup banner.
|
||||
|
||||
QMAKE_CXXFLAGS_RELEASE += /GS- #Disable security check.
|
||||
QMAKE_CXXFLAGS_RELEASE += /MD #Link to multi-threaded DLL.
|
||||
QMAKE_CXXFLAGS_RELEASE += /Gy #Enable function level linking.
|
||||
QMAKE_CXXFLAGS_RELEASE += /O2 #Maximize speed.
|
||||
QMAKE_CXXFLAGS_RELEASE += /Ot #Favor fast code.
|
||||
QMAKE_CXXFLAGS_RELEASE += /D "NDEBUG" #Release mode.
|
||||
|
||||
QMAKE_CXXFLAGS_DEBUG += /W3 #Error warning level to 3.
|
||||
QMAKE_CXXFLAGS_DEBUG += /GS #Enable security check.
|
||||
QMAKE_CXXFLAGS_DEBUG += /MDd #Link to multi-threaded debug DLL.
|
||||
QMAKE_CXXFLAGS_DEBUG += /Od #Optimization disabled.
|
||||
QMAKE_CXXFLAGS_DEBUG += /D "_DEBUG" #Debug mode.
|
||||
QMAKE_CXXFLAGS_DEBUG += /RTC1 #Basic runtime checks: stack frames and uninitialized variables.
|
||||
QMAKE_CXXFLAGS_DEBUG += /Ob2 #Inline function expansion: any suitable.
|
||||
}
|
||||
|
||||
!win32 {
|
||||
native {
|
||||
QMAKE_CXXFLAGS += -march=native
|
||||
} else {
|
||||
QMAKE_CXXFLAGS += -march=k8
|
||||
}
|
||||
|
||||
QMAKE_CXXFLAGS_RELEASE += -fomit-frame-pointer
|
||||
QMAKE_CXXFLAGS += -fPIC
|
||||
QMAKE_CXXFLAGS += -fpermissive
|
||||
QMAKE_CXXFLAGS += -pedantic
|
||||
QMAKE_CXXFLAGS += -std=c++20
|
||||
QMAKE_CXXFLAGS += -Wnon-virtual-dtor
|
||||
QMAKE_CXXFLAGS += -Wshadow
|
||||
QMAKE_CXXFLAGS += -Winit-self
|
||||
QMAKE_CXXFLAGS += -Wredundant-decls
|
||||
QMAKE_CXXFLAGS += -Wcast-align
|
||||
QMAKE_CXXFLAGS += -Winline
|
||||
QMAKE_CXXFLAGS += -Wunreachable-code
|
||||
QMAKE_CXXFLAGS += -Wswitch-enum
|
||||
QMAKE_CXXFLAGS += -Wswitch-default
|
||||
QMAKE_CXXFLAGS += -Wmain
|
||||
QMAKE_CXXFLAGS += -Wfatal-errors
|
||||
QMAKE_CXXFLAGS += -Wall -fpermissive
|
||||
|
||||
# CL has lots of old-style-cast which clogs up warning logs
|
||||
#QMAKE_CXXFLAGS += -Wold-style-cast
|
||||
|
||||
QMAKE_CXXFLAGS += -Wno-unused-parameter
|
||||
QMAKE_CXXFLAGS += -Wno-unused-function
|
||||
QMAKE_CXXFLAGS += -Wold-style-cast
|
||||
|
||||
QMAKE_CXXFLAGS_DEBUG += -Wmissing-include-dirs
|
||||
QMAKE_CXXFLAGS_DEBUG += -Wzero-as-null-pointer-constant
|
||||
# NOTE: last path will be the first to search. gcc -I and -L appends to the
|
||||
# beginning of the path list.
|
||||
|
||||
# NOTE: qmake will resolve symlinks. If /usr/local/include/CL is a symlink to
|
||||
# /usr/include/nvidia-352/CL, qmake will generate Makefiles using the latter.
|
||||
}
|
||||
|
||||
macx {
|
||||
QMAKE_MAC_SDK = macosx10.14
|
||||
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.10
|
||||
QMAKE_CXXFLAGS += -mmacosx-version-min=10.10 -arch x86_64
|
||||
QMAKE_CXXFLAGS += -stdlib=libc++
|
||||
}
|
||||
|
||||
unix {
|
||||
CONFIG += precompile_header
|
||||
QMAKE_LFLAGS_RELEASE += -s
|
||||
}
|
||||
|
||||
#9) Declare !win32 install dirs.
|
||||
win32 {#For Windows, the install folder is just the output folder.
|
||||
LIB_INSTALL_DIR = $$DESTDIR
|
||||
BIN_INSTALL_DIR = $$DESTDIR
|
||||
SHARE_INSTALL_DIR = $$DESTDIR
|
||||
LAUNCHER_INSTALL_DIR = $$DESTDIR
|
||||
}
|
||||
|
||||
!win32 {
|
||||
LIB_INSTALL_DIR = /usr/lib
|
||||
BIN_INSTALL_DIR = /usr/bin
|
||||
SHARE_INSTALL_DIR = /usr/share/fractorium
|
||||
LAUNCHER_INSTALL_DIR = /usr/share/applications
|
||||
}
|
||||
|
||||
#10) Add third party libraries to install dir.
|
||||
win32 {
|
||||
libxml.path = $$BIN_INSTALL_DIR
|
||||
libxml.files = $$absolute_path($$EMBER_ROOT/Deps/libxml2.dll)
|
||||
INSTALLS += libxml
|
||||
|
||||
iex.path = $$BIN_INSTALL_DIR
|
||||
iex.files = $$absolute_path($$EMBER_ROOT/Deps/Iex-3_1.dll)
|
||||
INSTALLS += iex
|
||||
|
||||
imath.path = $$BIN_INSTALL_DIR
|
||||
imath.files = $$absolute_path($$EMBER_ROOT/Deps/Imath-3_1.dll)
|
||||
INSTALLS += imath
|
||||
|
||||
ilmthread.path = $$BIN_INSTALL_DIR
|
||||
ilmthread.files = $$absolute_path($$EMBER_ROOT/Deps/IlmThread-3_1.dll)
|
||||
INSTALLS += ilmthread
|
||||
|
||||
openexr.path = $$BIN_INSTALL_DIR
|
||||
openexr.files = $$absolute_path($$EMBER_ROOT/Deps/OpenEXR-3_1.dll)
|
||||
INSTALLS += openexr
|
||||
}
|
||||
|
||||
#11) Print values of relevant variables for debugging.
|
||||
#message(CONFIG: $(CONFIG))
|
||||
#message(EMBER_ROOT: $$absolute_path($$EMBER_ROOT))
|
||||
#message(EXTERNAL_DIR: $$absolute_path($$EXTERNAL_DIR))
|
||||
#message(EXTERNAL_LIB: $$absolute_path($$EXTERNAL_LIB))
|
||||
#message(SRC_DIR: $$absolute_path($$SRC_DIR))
|
||||
#message(SRC_COMMON_DIR: $$SRC_COMMON_DIR)
|
||||
#message(ASSETS_DIR: $$absolute_path($$ASSETS_DIR))
|
||||
#message(LOCAL_INCLUDE_DIR: $$absolute_path($$LOCAL_INCLUDE_DIR))
|
||||
#message(QTCREATOR_DIR: $$absolute_path($$QTCREATOR_DIR))
|
||||
#message(LIBS: $$absolute_path($$LIBS))
|
||||
#message(DESTDIR: $$absolute_path($$DESTDIR))
|
||||
#message(DEPENDPATH: $$absolute_path($$DEPENDPATH))
|
||||
#message(AMDAPPSDKROOT: $$(AMDAPPSDKROOT))
|
||||
#message(CUDA_PATH: $$(CUDA_PATH))
|
||||
|
||||
win32 {
|
||||
#message(RCPATH: $$RCPATH)
|
||||
}
|
||||
|
||||
#message(LIB_INSTALL_DIR: $$absolute_path($$LIB_INSTALL_DIR))
|
||||
#message(BIN_INSTALL_DIR: $$absolute_path($$BIN_INSTALL_DIR))
|
||||
#message(SHARE_INSTALL_DIR: $$absolute_path($$SHARE_INSTALL_DIR))
|
||||
#message(LAUNCHER_INSTALL_DIR: $$absolute_path($$LAUNCHER_INSTALL_DIR))
|
||||
|
Reference in New Issue
Block a user