annotate CMakeLists.txt @ 122:bc218c9d2ea6

strings: convert ToInt() to be a template ini: conform to new strings.cc changes
author Paper <mrpapersonic@gmail.com>
date Wed, 08 Nov 2023 21:36:09 -0500
parents 275da698697d
children 4c812fdf82a6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
1 cmake_minimum_required(VERSION 3.18)
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
2 project(minori LANGUAGES CXX VERSION 0.1.0)
17
db445ce42057 cmake: only enable OBJCXX on OS X
Paper <mrpapersonic@gmail.com>
parents: 15
diff changeset
3
db445ce42057 cmake: only enable OBJCXX on OS X
Paper <mrpapersonic@gmail.com>
parents: 15
diff changeset
4 if(APPLE)
db445ce42057 cmake: only enable OBJCXX on OS X
Paper <mrpapersonic@gmail.com>
parents: 15
diff changeset
5 enable_language(OBJCXX)
db445ce42057 cmake: only enable OBJCXX on OS X
Paper <mrpapersonic@gmail.com>
parents: 15
diff changeset
6 endif()
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
7
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
8 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
9 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
10 set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
11
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
12 option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
13 option(USE_QT6 "Force build with Qt 6" OFF)
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
14 option(USE_QT5 "Force build with Qt 5" OFF)
114
ab191e28e69d *: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents: 112
diff changeset
15 option(UPDATE_TRANSLATIONS "Update *.ts translation files" OFF)
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
16
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
17 add_subdirectory(dep/anitomy)
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
18 add_subdirectory(dep/animia)
55
d10b6c6b432e add xml lib, we will need to use it eventually
Paper <mrpapersonic@gmail.com>
parents: 54
diff changeset
19 add_subdirectory(dep/pugixml)
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
20
12
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
21 # Fix for mingw64
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
22 list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a")
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
23
110
2f3ae79adb02 cmake: fix what I tried to do in the last commit
Paper <mrpapersonic@gmail.com>
parents: 109
diff changeset
24 if(USE_QT6)
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
25 set(QT_VERSION_MAJOR 6)
109
79714c95a145 *: add translation files and locale files
Paper <mrpapersonic@gmail.com>
parents: 108
diff changeset
26 elseif(USE_QT5)
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
27 set(QT_VERSION_MAJOR 5)
62
4c6dd5999b39 *: update
Paper <mrpapersonic@gmail.com>
parents: 57
diff changeset
28 else()
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
29 find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Core)
62
4c6dd5999b39 *: update
Paper <mrpapersonic@gmail.com>
parents: 57
diff changeset
30 endif()
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
31
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
32 find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets LinguistTools)
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
33
12
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
34 find_package(CURL REQUIRED)
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
35
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
36 set(LIBRARIES
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
37 ${CURL_LIBRARIES}
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
38 ${Qt${QT_VERSION_MAJOR}Widgets_LIBRARIES}
12
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
39 anitomy
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
40 animia
114
ab191e28e69d *: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents: 112
diff changeset
41 pugixml
12
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
42 )
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
43
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
44 # We need Cocoa for some OS X stuff
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
45 if(APPLE)
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
46 find_library(COCOA_LIBRARY Cocoa)
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
47 list(APPEND LIBRARIES ${COCOA_LIBRARY})
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
48 endif()
cf6a73a5ba1c cmake: fix for mingw
Paper <mrpapersonic@gmail.com>
parents: 11
diff changeset
49
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
50 set(SRC_FILES
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
51 # Main entrypoint
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
52 src/main.cc
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
53
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
54 # Core files and datatype declarations...
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
55 src/core/anime.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
56 src/core/anime_db.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
57 src/core/config.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
58 src/core/date.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
59 src/core/filesystem.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
60 src/core/http.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
61 src/core/json.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
62 src/core/strings.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
63 src/core/time.cc
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
64
46
d0adc4aedfc8 *: update...
Paper <mrpapersonic@gmail.com>
parents: 17
diff changeset
65 # Main window
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
66 src/gui/window.cc
102
b315f3759c56 *: big patch
Paper <mrpapersonic@gmail.com>
parents: 101
diff changeset
67 src/gui/theme.cc
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
68 src/gui/locale.cc
46
d0adc4aedfc8 *: update...
Paper <mrpapersonic@gmail.com>
parents: 17
diff changeset
69
d0adc4aedfc8 *: update...
Paper <mrpapersonic@gmail.com>
parents: 17
diff changeset
70 # Main window pages
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
71 src/gui/pages/anime_list.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
72 src/gui/pages/now_playing.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
73 src/gui/pages/statistics.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
74 src/gui/pages/search.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
75 src/gui/pages/seasons.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
76 src/gui/pages/torrents.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
77 src/gui/pages/history.cc
54
466ac9870df9 add stub pages (to be implemented)
Paper <mrpapersonic@gmail.com>
parents: 51
diff changeset
78
46
d0adc4aedfc8 *: update...
Paper <mrpapersonic@gmail.com>
parents: 17
diff changeset
79 # Custom widgets
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
80 src/gui/widgets/anime_info.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
81 src/gui/widgets/poster.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
82 src/gui/widgets/clickable_label.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
83 src/gui/widgets/sidebar.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
84 src/gui/widgets/text.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
85 src/gui/widgets/optional_date.cc
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
86
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
87 # Dialogs
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
88 src/gui/dialog/about.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
89 src/gui/dialog/information.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
90 src/gui/dialog/settings.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
91 src/gui/dialog/settings/application.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
92 src/gui/dialog/settings/services.cc
116
254b1d2b7096 settings: add torrents page, make rss feed configurable
Paper <mrpapersonic@gmail.com>
parents: 114
diff changeset
93 src/gui/dialog/settings/torrents.cc
119
4eae379cb1ff settings: add a very early recognition tab for configuring players and extensions
Paper <mrpapersonic@gmail.com>
parents: 118
diff changeset
94 src/gui/dialog/settings/recognition.cc
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
95
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
96 # Translate
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
97 src/gui/translate/anime.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
98 src/gui/translate/anilist.cc
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 82
diff changeset
99 src/gui/translate/config.cc
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
100
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
101 # Services (only AniList for now)
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
102 src/services/services.cc
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
103 src/services/anilist.cc
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
104
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
105 # Tracking
82
8b65c417c225 *: fix old stuff, make video players and extensions constants
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
106 src/track/constants.cc
81
9b2b41f83a5e boring: mass rename to cc
Paper <mrpapersonic@gmail.com>
parents: 75
diff changeset
107 src/track/media.cc
118
39521c47c7a3 *: another huge megacommit, SORRY
Paper <mrpapersonic@gmail.com>
parents: 116
diff changeset
108 src/track/types.cc
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
109
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
110 # Qt resources
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
111 rc/icons.qrc
105
6d8da6e64d61 theme: add dark stylesheet, make it actually usable
Paper <mrpapersonic@gmail.com>
parents: 103
diff changeset
112 rc/dark.qrc
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
113 )
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
114
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
115 set(INCLUDE
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
116 include
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
117 dep/pugixml/src
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
118 dep/animia/include
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
119 dep/anitomy
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
120 dep
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
121 )
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
122
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
123 set(TS_FILES
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
124 rc/locale/en_GB.ts
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
125 rc/locale/es.ts
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
126 )
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
127
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
128 set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/rc/locale")
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
129
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
130 # dumb little hack to get this working on Qt5 and Qt6
110
2f3ae79adb02 cmake: fix what I tried to do in the last commit
Paper <mrpapersonic@gmail.com>
parents: 109
diff changeset
131 if(UPDATE_TRANSLATIONS)
109
79714c95a145 *: add translation files and locale files
Paper <mrpapersonic@gmail.com>
parents: 108
diff changeset
132 cmake_language(CALL qt${QT_VERSION_MAJOR}_create_translation ${SRC_FILES} ${TS_FILES} OPTIONS "-I${CMAKE_CURRENT_SOURCE_DIR}/include")
79714c95a145 *: add translation files and locale files
Paper <mrpapersonic@gmail.com>
parents: 108
diff changeset
133 endif()
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
134 cmake_language(CALL qt${QT_VERSION_MAJOR}_add_translation QM_FILES ${TS_FILES})
112
80f49f623d30 locale: allow switching locales without restarting
Paper <mrpapersonic@gmail.com>
parents: 110
diff changeset
135 list(APPEND SRC_FILES ${QM_FILES})
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
136
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
137 function(qt_create_resource_file outfile)
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
138 set(QRC "<!DOCTYPE rcc><RCC version=\"1.0\">\n\t<qresource>\n")
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
139 get_filename_component(DIR ${outfile} DIRECTORY)
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
140 foreach (qm ${ARGN})
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
141 file(RELATIVE_PATH name ${DIR} ${qm})
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
142 string(APPEND QRC "\t\t<file>${name}</file>\n")
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
143 endforeach()
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
144 string(APPEND QRC "\t</qresource>\n</RCC>\n")
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
145 file(WRITE ${outfile} ${QRC})
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
146 endfunction()
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
147
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
148 qt_create_resource_file("${CMAKE_CURRENT_BINARY_DIR}/rc/locale.qrc" ${QM_FILES})
112
80f49f623d30 locale: allow switching locales without restarting
Paper <mrpapersonic@gmail.com>
parents: 110
diff changeset
149 list(APPEND SRC_FILES "${CMAKE_CURRENT_BINARY_DIR}/rc/locale.qrc")
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
150
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
151 # This is also used in the Win32 rc file
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
152 set(RC_INFO_STRING "A lightweight anime tracker built with Qt.")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
153
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
154 if(APPLE) # Mac OS X (or OS X (or macOS))
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
155 set(MACOSX_BUNDLE_BUNDLE_NAME "Minori")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
156 set(MACOSX_BUNDLE_BUNDLE_VERSION ${minori_VERSION})
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
157 set(MACOSX_BUNDLE_COPYRIGHT "Copyright (C) Paper 2023")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
158 set(MACOSX_BUNDLE_GUI_IDENTIFIER "org.eu.us.paper.minori")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
159 set(MACOSX_BUNDLE_INFO_STRING ${RC_INFO_STRING})
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
160 set(MACOSX_BUNDLE_ICON_FILE rc/osx/favicon.icns)
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
161 set(app_icon_osx "${CMAKE_CURRENT_SOURCE_DIR}/rc/osx/favicon.icns")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
162 set_source_files_properties(${app_icon_osx} PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
163
5
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
164 list(APPEND SRC_FILES
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
165 src/sys/osx/dark_theme.mm
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
166 src/sys/osx/filesystem.mm
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
167 ${app_icon_osx}
5
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
168 )
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
169 elseif(WIN32) # Windows
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
170 configure_file(
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
171 ${CMAKE_CURRENT_SOURCE_DIR}/rc/win32/version.rc.in
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
172 ${CMAKE_CURRENT_BINARY_DIR}/rc/version.rc
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
173 @ONLY
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
174 )
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
175 list(APPEND SRC_FILES
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
176 src/sys/win32/dark_theme.cc
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
177 rc/win32/resource.rc
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
178 ${CMAKE_CURRENT_BINARY_DIR}/rc/version.rc
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
179 )
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
180 endif()
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
181
103
621084cc542c resources: add icons
Paper <mrpapersonic@gmail.com>
parents: 102
diff changeset
182 add_executable(minori WIN32 MACOSX_BUNDLE ${SRC_FILES})
63
3d2decf093bb *: fix many clang warnings
Paper <mrpapersonic@gmail.com>
parents: 62
diff changeset
183 set_property(TARGET minori PROPERTY CXX_STANDARD 11)
11
fc1bf97c528b *: use C++11 standard
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
184 set_property(TARGET minori PROPERTY AUTOMOC ON)
fc1bf97c528b *: use C++11 standard
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
185 set_property(TARGET minori PROPERTY AUTORCC ON)
2
Paper <mrpapersonic@gmail.com>
parents: 1
diff changeset
186
108
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
187 target_include_directories(minori PUBLIC ${CURL_INCLUDE_DIRS} PRIVATE ${INCLUDE})
2004b41d4a59 *: huge commit
Paper <mrpapersonic@gmail.com>
parents: 105
diff changeset
188 target_include_directories(minori PUBLIC ${Qt${QT_VERSION_MAJOR}Widgets_INCLUDE_DIRS})
64
fe719c109dbc *: update
Paper <mrpapersonic@gmail.com>
parents: 63
diff changeset
189 target_compile_options(minori PRIVATE -Wall -Wpedantic -Wextra -Wsuggest-override -Wold-style-cast)
5
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
190 if(APPLE)
11
fc1bf97c528b *: use C++11 standard
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
191 target_compile_definitions(minori PUBLIC MACOSX)
9
5c0397762b53 INCOMPLETE: megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 7
diff changeset
192 elseif(WIN32)
11
fc1bf97c528b *: use C++11 standard
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
193 target_compile_definitions(minori PUBLIC WIN32)
5
51ae25154b70 Fix OS X support code
Paper <mrpapersonic@gmail.com>
parents: 4
diff changeset
194 endif()
11
fc1bf97c528b *: use C++11 standard
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
195 target_link_libraries(minori ${LIBRARIES})