|
| 1 | +# This is a project template file defining an sView Toolkit. |
| 2 | +# This project should be included with predefined ST_TOOLKIT_NAME variable. |
| 3 | + |
| 4 | +#TEMPLATE = lib |
| 5 | +TEMPLATE = aux |
| 6 | + |
| 7 | +# Disable some dummy Qt defaults |
| 8 | +QT -= core gui |
| 9 | +CONFIG -= qt app_bundle |
| 10 | +CONFIG -= debug_and_release |
| 11 | + |
| 12 | +sViewRoot = $$_PRO_FILE_PWD_/../../.. |
| 13 | +DESTDIR = $$sViewRoot/build |
| 14 | +LIBS += -L$$sViewRoot/build |
| 15 | +exists(custom.pri) { include(custom.pri) } |
| 16 | + |
| 17 | +aSrcListHpp0 = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.h, true) |
| 18 | +aSrcListHpp1 = $$files($$sViewRoot/include/$$ST_TOOLKIT_NAME/*.h) |
| 19 | +aSrcListCpp = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.cpp, true) |
| 20 | +aSrcListMm = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.mm, true) |
| 21 | +aSrcListJava = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.java, true) |
| 22 | +aSrcListRc = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.rc, true) |
| 23 | +aSrcListXml = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.xml, true) |
| 24 | +aSrcListPlist= $$files($$sViewRoot/$$ST_TOOLKIT_NAME/*.plist, true) |
| 25 | +INCLUDEPATH += $$sViewRoot/include |
| 26 | +INCLUDEPATH += $$sViewRoot/3rdparty/include |
| 27 | +HEADERS += $$aSrcListHpp0 |
| 28 | +HEADERS += $$aSrcListHpp1 |
| 29 | +!equals(TEMPLATE, aux) { |
| 30 | + SOURCES += $$aSrcListCpp |
| 31 | + mac { SOURCES += $$aSrcListMm } |
| 32 | +} |
| 33 | +OTHER_FILES += $$aSrcListJava |
| 34 | +OTHER_FILES += $$aSrcListRc |
| 35 | +OTHER_FILES += $$aSrcListXml |
| 36 | +OTHER_FILES += $$aSrcListPlist |
| 37 | + |
| 38 | +aLngList = chinese czech english french german korean russian |
| 39 | +for (aLngIter, aLngList) { |
| 40 | + aSrcListLng = $$files($$sViewRoot/$$ST_TOOLKIT_NAME/lang/$$aLngIter/*.lng) |
| 41 | + OTHER_FILES += $$aSrcListLng |
| 42 | +} |
| 43 | + |
| 44 | +equals(ST_TOOLKIT_NAME, StShared) { |
| 45 | + aSrcListHppX = $$files($$sViewRoot/include/*.h,true) |
| 46 | + HEADERS += $$aSrcListHppX |
| 47 | + |
| 48 | + DEFINES += ST_SHARED_DLL |
| 49 | +} else:equals(ST_TOOLKIT_NAME, sview) { |
| 50 | + # Define sView executable which Qt Creator will automatically use for "Run". |
| 51 | + # Touch dummy.cpp to force QMAKE_POST_LINK redirecting to main Makefile to be executed within each build. |
| 52 | + TEMPLATE = app |
| 53 | + TARGET = sView |
| 54 | + SOURCES += $$_PRO_FILE_PWD_/../dummy.cpp |
| 55 | + QMAKE_POST_LINK += rm $(TARGET); touch $$_PRO_FILE_PWD_/../dummy.cpp; |
| 56 | + |
| 57 | + # Redirect clean to main Makefile. |
| 58 | + realclean.commands = $(MAKE) --directory $$sViewRoot clean |
| 59 | + clean.depends = realclean |
| 60 | + QMAKE_EXTRA_TARGETS += clean realclean |
| 61 | + |
| 62 | + # Prepare make arguments |
| 63 | + aNbJobs = $$system(getconf _NPROCESSORS_ONLN) |
| 64 | + ST_MAKE_ARGS = -j$$aNbJobs |
| 65 | + #ST_MAKE_TARGET = android |
| 66 | + !isEmpty(ST_MAKE_TARGET) { ST_MAKE_ARGS += $$ST_MAKE_TARGET } |
| 67 | + aMakeEnvList = ANDROID_NDK ANDROID_BUILD_TOOLS ANDROID_PLATFORM ANDROID_EABI FFMPEG_ROOT FREETYPE_ROOT OPENAL_ROOT LIBCONFIG_ROOT ANDROID_KEY_GUI ANDROID_KEYSTORE ANDROID_KEYSTORE_PASSWORD ANDROID_KEY ANDROID_KEY_PASSWORD |
| 68 | + for (aMakeEnvIter, aMakeEnvList) { |
| 69 | + !isEmpty($${aMakeEnvIter}) { ST_MAKE_ARGS += $${aMakeEnvIter}=$$val_escape($${aMakeEnvIter}) } |
| 70 | + } |
| 71 | + |
| 72 | + # Redirect build to main Makefile. |
| 73 | + QMAKE_POST_LINK += $(MAKE) --directory $$sViewRoot $$ST_MAKE_ARGS; |
| 74 | + #realbuild.commands = $(MAKE) --directory $$sViewRoot $$ST_MAKE_ARGS |
| 75 | + #realbuild.target = realbuild |
| 76 | + #QMAKE_EXTRA_TARGETS += realbuild |
| 77 | + #POST_TARGETDEPS += realbuild |
| 78 | +} |
0 commit comments