qstardict.pri 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. #############################################################################
  2. # qstardict.pri - QStarDict, a StarDict clone written with using Qt #
  3. # Copyright (C) 2008 Alexander Rodin #
  4. # #
  5. # This program is free software; you can redistribute it and/or modify #
  6. # it under the terms of the GNU General Public License as published by #
  7. # the Free Software Foundation; either version 2 of the License, or #
  8. # (at your option) any later version. #
  9. # #
  10. # This program is distributed in the hope that it will be useful, #
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of #
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
  13. # GNU General Public License for more details. #
  14. # #
  15. # You should have received a copy of the GNU General Public License along #
  16. # with this program; if not, write to the Free Software Foundation, Inc., #
  17. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. #
  18. #############################################################################
  19. # It's common for all subprjects file. Keep it in mind changing it
  20. VERSION = 1.4
  21. QT = \
  22. core \
  23. gui \
  24. network \
  25. xml
  26. QT += widgets printsupport
  27. CONFIG += \
  28. qt \
  29. warn_on
  30. CONFIG += c++2a
  31. unix {
  32. CONFIG += link_pkgconfig
  33. PKGCONFIG += glib-2.0
  34. macx {
  35. LIBS += /System/Library/Frameworks/Carbon.framework/Carbon
  36. } else {
  37. LIBS += -lX11
  38. }
  39. LIBS += -lz
  40. }
  41. win32 {
  42. CONFIG += console
  43. LIBS += -lzdll -lglib-2.0 -luser32
  44. INCLUDEPATH += $$GLIB2PATH/include/glib-2.0 \
  45. $$GLIB2PATH/lib/glib-2.0/include \
  46. $$ZLIBPATH/include
  47. QMAKE_LIBDIR += $$GLIB2PATH/lib \
  48. $$ZLIBPATH/lib
  49. }
  50. !isEmpty(DEV):DEFINES += DEV
  51. unix:DEFINES += HAVE_MMAP
  52. unix:isEmpty(NO_DBUS):!contains(QT_CONFIG, dbus): NO_DBUS = 1
  53. unix:isEmpty(NO_DBUS):QT += dbus
  54. unix:isEmpty(NO_DBUS):DEFINES += QSTARDICT_WITH_DBUS
  55. isEmpty(NO_TRANSLATIONS):DEFINES += QSTARDICT_WITH_TRANSLATIONS
  56. macx:isEmpty(TRAY_ICON):NO_TRAY_ICON = 1
  57. isEmpty(NO_TRAY_ICON):DEFINES += QSTARDICT_WITH_TRAY_ICON
  58. include(plugins/plugins.pri)
  59. unix {
  60. macx {
  61. isEmpty(INSTALL_PREFIX) {
  62. INSTALL_PREFIX=/Applications
  63. }
  64. # helper var to save text duplicity.
  65. # NOTE: it cannot use $$TARGET because the target is
  66. # different in every directory. Obviously.
  67. MAC_BUNDLE_PATH=$$INSTALL_PREFIX/QStarDict.app/Contents
  68. # bin dir is used for qstardict dir/main application
  69. # qmake created bundle for it itself. So it *has* to be
  70. # the same as install location
  71. BIN_DIR=$$INSTALL_PREFIX
  72. DATA_DIR=$$MAC_BUNDLE_PATH/share
  73. TRANSLATIONS_DIR=$$MAC_BUNDLE_PATH/i18n
  74. PLUGINS_DIR=$$MAC_BUNDLE_PATH/lib
  75. DOCS_DIR=$$MAC_BUNDLE_PATH/share/doc
  76. MAN_DIR=$$MAC_BUNDLE_PATH/share/man/man1
  77. bundle.target = bundle
  78. bundle.depends = install
  79. bundle.commands = "mkdir -p bundle && cp -R $$INSTALL_PREFIX/QStarDict.app bundle/QStarDict.app && ln -s /Applications bundle/Applications"
  80. dmg.target = "QStarDict.dmg"
  81. dmg.depends = bundle
  82. dmg.commands = "rm -f QStarDict.dmg QStarDict_tmp.dmg && hdiutil create QStarDict_tmp.dmg -ov -volname QStarDict -fs HFS+ -srcfolder bundle && hdiutil convert QStarDict_tmp.dmg -format UDZO -o QStarDict.dmg"
  83. QMAKE_EXTRA_TARGETS += bundle dmg
  84. }
  85. else {
  86. isEmpty(INSTALL_PREFIX):INSTALL_PREFIX=/usr
  87. isEmpty(BIN_DIR):BIN_DIR=$$INSTALL_PREFIX/bin
  88. isEmpty(DATA_DIR):DATA_DIR=$$INSTALL_PREFIX/share/qstardict
  89. isEmpty(NO_TRANSLATIONS):isEmpty(TRANSLATIONS_DIR):TRANSLATIONS_DIR=$$DATA_DIR/translations
  90. isEmpty(LIB_DIR):LIB_DIR=$$INSTALL_PREFIX/lib/qstardict
  91. isEmpty(PLUGINS_DIR):PLUGINS_DIR=$$LIB_DIR/plugins
  92. isEmpty(DOCS_DIR):DOCS_DIR=$$INSTALL_PREFIX/share/doc/qstardict
  93. isEmpty(MAN_DIR):MAN_DIR=$$INSTALL_PREFIX/share/man/man1
  94. }
  95. DEFINES += QSTARDICT_VERSION=\\\"$$VERSION\\\"
  96. DEFINES += QSTARDICT_INSTALL_PREFIX=\\\"$$INSTALL_PREFIX\\\"
  97. DEFINES += QSTARDICT_BIN_DIR=\\\"$$BIN_DIR\\\"
  98. DEFINES += QSTARDICT_DATA_DIR=\\\"$$DATA_DIR\\\"
  99. isEmpty(NO_TRANSLATIONS):DEFINES += QSTARDICT_TRANSLATIONS_DIR=\\\"$$TRANSLATIONS_DIR\\\"
  100. DEFINES += QSTARDICT_PLUGINS_DIR=\\\"$$PLUGINS_DIR\\\"
  101. DEFINES += QSTARDICT_DOCS_DIR=\\\"$$DOCS_DIR\\\"
  102. } else:win32 {
  103. isEmpty(INSTALL_PREFIX) {
  104. INSTALL_PREFIX=
  105. } else {
  106. # handle path backslashes in defines correctly
  107. INSTALL_PREFIX = $$re_escape($$INSTALL_PREFIX)
  108. }
  109. isEmpty(BIN_DIR):BIN_DIR=$$INSTALL_PREFIX/
  110. isEmpty(DATA_DIR):DATA_DIR=$$INSTALL_PREFIX/data
  111. isEmpty(NO_TRANSLATIONS):isEmpty(TRANSLATIONS_DIR):TRANSLATIONS_DIR=$$INSTALL_PREFIX/translations
  112. isEmpty(PLUGINS_DIR):PLUGINS_DIR=$$INSTALL_PREFIX/plugins
  113. isEmpty(DOCS_DIR):DOCS_DIR=$$INSTALL_PREFIX/docs
  114. isEmpty(MAN_DIR):MAN_DIR=$$INSTALL_PREFIX/man
  115. DEFINES += QSTARDICT_VERSION=\\\"$$VERSION\\\"
  116. # DEFINES += QSTARDICT_INSTALL_PREFIX=\(QApplication::applicationDirPath\(\)+\\\"$$INSTALL_PREFIX\\\"\)
  117. # DEFINES += QSTARDICT_BIN_DIR=\(QApplication::applicationDirPath\(\)+\\\"$$BIN_DIR\\\"\)
  118. # DEFINES += QSTARDICT_DATA_DIR=\(QApplication::applicationDirPath\(\)+\\\"$$DATA_DIR\\\"\)
  119. # isEmpty(NO_TRANSLATIONS):DEFINES += QSTARDICT_TRANSLATIONS_DIR=\(QApplication::applicationDirPath\(\)+\\\"$$TRANSLATIONS_DIR\\\"\)
  120. # DEFINES += QSTARDICT_PLUGINS_DIR=\(QApplication::applicationDirPath\(\)+\\\"$$PLUGINS_DIR\\\"\)
  121. DEFINES += QSTARDICT_INSTALL_PREFIX=\\\"$$INSTALL_PREFIX\\\"
  122. DEFINES += QSTARDICT_BIN_DIR=\\\"$$BIN_DIR\\\"
  123. DEFINES += QSTARDICT_DATA_DIR=\\\"$$DATA_DIR\\\"
  124. isEmpty(NO_TRANSLATIONS):DEFINES += QSTARDICT_TRANSLATIONS_DIR=\\\"$$TRANSLATIONS_DIR\\\"
  125. DEFINES += QSTARDICT_PLUGINS_DIR=\\\"$$PLUGINS_DIR\\\"
  126. }